Перейти до основного матеріалу

Як підсумувати числа в дужках лише в Excel?

Якщо є список текстових рядків, і ви просто хочете скласти всі цифри в дужках, як показано на знімку екрана, як ви можете швидко це впоратись? У цій статті я представляю декілька прийомів для підсумовування цифр у дужках лише в Excel.


Сумувати числа в дужках лише за формулою

Щоб підсумувати числа лише в дужках, ви можете спочатку витягнути числа, що знаходяться в дужках, а потім скласти їх.

1. Виберіть порожню комірку поруч із коміркою, для якої потрібно підсумувати її цифри в дужках, наприклад, В2, введіть цю формулу
=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. Виділіть комірку, в яку ви помістите результат підсумовування, введіть = SUM (B1: B8), і натисніть Що натомість? Створіть віртуальну версію себе у ключ. Дивіться знімок екрана:
номери документів у дужках 3

Порада: у формулі, B1: B8 - це числа, які ви вилучили з оригінального списку текстового рядка і хочете підвести підсумок.


Сумувати числа в дужках лише з визначеною функцією

Ви також можете застосувати визначену функцію для підсумовування чисел у дужках.

1. прес Alt + F11 клавіші для ввімкнення Microsoft Visual Basic для додатків вікна, натисніть Insert > Модуліі вставте код нижче в порожній сценарій.

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), натисніть Що натомість? Створіть віртуальну версію себе у ключ. Дивіться знімок екрана:
номери документів у дужках 5


Сумуйте числа в квадратних дужках лише за допомогою Kutools для Excel

Власне, с Kutools для ExcelАвтора Витяг тексту функція для вилучення чисел у дужках, а потім застосувати Сума абсолютних величин функція для підсумовування чисел.

після установки Kutools для Excel, виконайте наведені нижче дії:(Безкоштовно завантажте Kutools для Excel зараз!)

1. Виберіть рядки, для яких потрібно витягти числа в дужках, і натисніть Kutools> текст > Витяг тексту. Дивіться знімок екрана:
номери документів у дужках 6

2 В Витяг тексту діалогове вікно, введіть (*) в текст текстове поле та натисніть додавати додати його до Витяг списку. Потім натисніть Okта вибрати клітинку для розміщення вилучених чисел у діалоговому вікні, наприклад C1. Дивіться знімок екрана:

Примітка: Якщо в. Є інші правила вилучення Список витягів розділ, зніміть прапорець біля цих правил вилучення та лише перевірте нове додане правило витягування (*).


номери документів у дужках 7 постріл стрілка вправо номери документів у дужках 8

3. клацання OK, і тепер цифри в дужках витягуються. За замовчуванням числа в дужках розпізнаються як від’ємні, вам потрібно підсумувати їх абсолютні значення.
номери документів у дужках 9

4. Виберіть комірку, в яку ви розмістите результат обчислення, натисніть Кутулс > Помічник формули > Math & Trig > Сума абсолютних величин. Дивіться знімок екрана:
номери документів у дужках 10

5 В Помічник формули діалогове вікно, виберіть діапазон, у якому містяться вилучені числа Номер текстове поле, C1: C8 у цьому випадку. Клацніть Ok, додано абсолютні значення чисел. Дивіться знімок екрана:

номери документів у дужках 11 постріл стрілка вправо номери документів у дужках 12

Порада. Якщо ви хочете отримати безкоштовну пробну версію Витяг тексту та Сума абсолютного значенняs функція, будь ласка, перейдіть до безкоштовного завантаження Kutools для Excel спочатку, а потім перейдіть до застосування операції, як описано вище.

Найкращі інструменти продуктивності офісу

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

Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу.  Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...

Опис


Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 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