Перейти к основному содержанию

Как суммировать числа в скобках только в Excel?

Если есть список текстовых строк, и вы просто хотите сложить все числа в скобках, как показано на скриншоте ниже, как вы можете быстро с этим справиться? В этой статье я познакомлю вас с некоторыми хитростями, позволяющими суммировать числа в скобках только в Excel.


Сумма чисел в скобках только с формулой

Чтобы суммировать числа только в скобках, вы можете сначала извлечь числа, которые находятся в скобках, а затем сложить их.

1. Выберите пустую ячейку рядом с ячейкой, в которой вы хотите суммировать ее числа в скобках, например B2, введите эту формулу.
=IF(ISERROR(MID(A1,FIND("(",A1)+1,(FIND(")",A1))-(FIND("(",A1)+1))),0,(MID(A1,FIND("(",A1)+1,(FIND(")",A1))-(FIND("(",A1)+1)))+0),
а затем перетащите дескриптор автозаполнения вниз, чтобы извлечь числа в скобках из каждой ячейки. Смотрите скриншот:
документы суммы в скобках 2

Функции: в формуле A1 - это ячейка, из которой нужно извлечь числа в скобках.

2. Выберите ячейку, в которую вы поместите результат суммирования, введите = СУММ (B1: B8), и нажмите Enter ключ. Смотрите скриншот:
документы суммы в скобках 3

Наконечник: в формуле B1: B8 - это числа, которые вы извлекли из исходного списка текстовой строки и хотите подвести итог.


Сумма чисел в скобках только с определенной функцией

Вы также можете применить Определенную функцию для суммирования чисел в скобках.

1. Нажмите Alt + F11 ключи для включения Microsoft Visual Basic для приложений окна, нажмите Вставить > Модулии вставьте приведенный ниже код в пустой скрипт.

VBA: сумма чисел в скобках

Function SumBracket(Target As Range) As Double
'UpdatebyExtendoffice20160901
Dim xCell As Range
Dim xObjs As Object, xObj As Object
Dim xSum As Double
Set xObjs = CreateObject("VBScript.RegExp")
xSum = 0
With xObjs
    .Global = True
    .Pattern = "\((\d+(\.\d+)?)\)"

    For Each xCell In Target
      If xCell.Value <> "" Then
        For Each xObj In xObjs.Execute(xCell.Value)
            xSum = xSum + xObj.submatches(0)
        Next
      End If
    Next
End With
SumBracket = xSum
End Function

документы суммы в скобках 4

2. Сохраните код и выберите ячейку, в которую будет помещен результат, и введите эту формулу. = SumBracket (A1: A8), нажмите Enter ключ. Смотрите скриншот:
документы суммы в скобках 5


Сумма чисел в скобках только с Kutools for Excel

Собственно, с Kutools for ExcelАвтора Извлечь текст функция для извлечения чисел в скобках, а затем применить Сумма абсолютных значений функция для суммирования чисел.

Kutools for Excel, с более чем 300 удобные функции, облегчающие вашу работу. 

После установки Kutools for Excel, пожалуйста, сделайте, как показано ниже :(Скачать бесплатно Kutools for Excel сейчас!)

1. Выберите строки, числа в скобках которых нужно извлечь, и нажмите Кутоолs> Текст > Извлечь текст. Смотрите скриншот:
документы суммы в скобках 6

2. в Извлечь текст диалог, введите (*) в Текст текстовое поле и щелкните Добавить добавить его в Извлечь список. Затем нажмите Ok, и чтобы выбрать ячейку для размещения извлеченных чисел в диалоговом окне, например C1. Смотрите скриншот:

Примечание: Если есть другие правила извлечения в Извлечь список раздел, пожалуйста, снимите отметку с этих правил извлечения и отметьте только новое добавленное правило извлечения (*).


документы суммы в скобках 7 выстрел стрелка вправо документы суммы в скобках 8

3. Нажмите OK, а теперь числа в скобках извлечены. По умолчанию числа в скобках распознаются как отрицательные, необходимо просуммировать их абсолютные значения.
документы суммы в скобках 9

4. Выберите ячейку, в которую вы поместите результат расчета, нажмите Кутулс > Формула Помощник > Математика и триггер > Сумма абсолютных значений. Смотрите скриншот:
документы суммы в скобках 10

5. в Формула Помощник диалоговом окне выберите диапазон, содержащий извлеченные числа в Номер регистрации текстовое поле, в данном случае C1: C8. Нажмите Ok добавлены абсолютные значения чисел. Смотрите скриншот:

документы суммы в скобках 11 выстрел стрелка вправо документы суммы в скобках 12

Наконечник. Если вы хотите получить бесплатную пробную версию Извлечь текст и Сумма абсолютного значенияфункция s, пожалуйста, перейдите к бесплатной загрузке Kutools for Excel сначала, а затем перейдите к применению операции в соответствии с вышеуказанными шагами.

Лучшие инструменты для офисной работы

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

Описание


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (15)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hello Sunny,

I have a question as well. I have an excel sheet with numbers and some of them are in brackets. I want to add the values of the numbers in a row. Basically:
50 (50*) 100 150 = 350
How can I add (=sum) of all of them, including the one in brackets? I'ld appreciate your advise.
Best, Anna
This comment was minimized by the moderator on the site
Vielen Dank Sonnig,

jetzt ich sehe wo war das Problem. Sie schreiben im VBA und Zelle "." statt wie bei mir "," Ich habe im VBA diese Zeile:
.Pattern = "\((\d+(\.\d+)?)\)"
in diese:
.Pattern = "\((\d+(\,\d+)?)\)"
geändert und dann funktioniert alles perfekt.

Noch mall vielen, vielen Dank.
Schöne Grüße

Wojtek
This comment was minimized by the moderator on the site
...ich meinte addieren Dezimalbruche 🙂
This comment was minimized by the moderator on the site
Hi, Wojtek, if you just want to sum the decimal numbers only, try this code:
Function SumBracket(Target As Range) As Double
'UpdatebyExtendoffice20221209
Dim xCell As Range
Dim xObjs As Object, xObj As Object
Dim xSum As Double
Dim xNum As Integer
On Error Resume Next
Application.Volatile
Set xObjs = CreateObject("VBScript.RegExp")
xSum = 0
With xObjs
    .Global = True
    .Pattern = "\((\d+(\.\d+)?)\)"

    For Each xCell In Target
      If xCell.Value <> "" Then
        For Each xObj In xObjs.Execute(xCell.Value)
            xSum = xSum + Val(xObj.submatches(0)) - Int(Val(xObj.submatches(0)))
        Next
      End If
    Next
End With
SumBracket = xSum
End Function
This comment was minimized by the moderator on the site
Hallo Sonnig,
vielen Dank für die schnelle Antwort 😀. Um die Ganze klar zu machen gebe ich ein Beispiel meiner Aufgabe:

a(5), b(2,5), c(0,25) = 7,75

wie gesagt, mit:

a(5), b(2), c(21) im eine Zelle funktioniert die erste Makro super.

Vielen Dank und schöne Grüße
Wojtek
This comment was minimized by the moderator on the site
Sorry, Wojtek, I do undestand Geman, I just translate your question by Google so that I do not get your question clearly. Could you give me more description, for example, the data structure, are they in a cell or in different cell, in a column or in a row, what result you want.
This comment was minimized by the moderator on the site
Hallo Sonnig,

noch mal vielen Dank für die Mühe.

Geht um Summe alle Zahlen die in der Klammer stehen...
Erste Zelle: 458/1(2,5), 458/2(11), 458/3(0,75)
Zweite Zelle: Summe von 2,5 und 11 und 0,75
alles was in der Klammer steht in der erste Zelle sollte summiert sein. das Ergebnis soll in der Zweite Zelle erscheinen.

Vielen Dank und schöne Grüße
Wojtek
This comment was minimized by the moderator on the site
Hallo,
danke, Makro funktioniert super, aber leider nur mit Ganze Zahl, nicht mit Bruchzahl. Wäre das möglich zu ändern?
This comment was minimized by the moderator on the site
I'm sorry, I meant adding the numbers outside the bracket.
This comment was minimized by the moderator on the site
Hi, Adduar, I do not find a formula to solve your problem, maybe you only can use the Extract Text tool of Kutools for Excel to extract the numbers first, and then sum them, the conditions are *( and )*.
This comment was minimized by the moderator on the site
How to add numbers within the bracket?
This comment was minimized by the moderator on the site
Hi, How do I modify the pattern to sum everything between F-( and )


Example of my data is: F-(10) F-(12) E-(8)


the sum would be 22


thanks
This comment was minimized by the moderator on the site
Hi, Andy, please try this code:
Function SumBracket(Target As Range) As Double
'UpdatebyExtendoffice20160901
Dim xCell As Range
Dim xObjs As Object, xObj As Object
Dim xSum As Double
Set xObjs = CreateObject("VBScript.RegExp")
xSum = 0
With xObjs
.Global = True
.Pattern = "\-\((\d+(\.\d+)?)\)"

For Each xCell In Target
If xCell.Value <> "" Then
For Each xObj In xObjs.Execute(xCell.Value)
xSum = xSum + xObj.submatches(0)
Next
End If
Next
End With
SumBracket = xSum
End Function
This comment was minimized by the moderator on the site
Hello, is there a Google App Script version of the VBA script. I would like to use it in Google Sheets.
Thanks. :D
This comment was minimized by the moderator on the site
Sorry I do not know
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations