Gå til hovedindhold

Hvordan summeres tal kun i parentes i Excel?

Forfatter: Sun Sidst ændret: 2020-08-21

Hvis der er en liste over tekststrenge, og du bare vil tilføje alle tal i parentes som vist nedenfor, hvordan kan du hurtigt håndtere det? I denne artikel introducerer jeg nogle tricks, som du kun kan sammenfatte numrene i parentes i Excel.


Som tal inden for parentes kun med formel

For kun at opsummere tal inden for parentes kan du først udpakke de tal, der er i parentes, og derefter tilføje dem.

1. Vælg en tom celle ud for den celle, du vil sammenfatte dens tal i parentes, f.eks. B2, indtast denne formel
=IF(ISERROR(MID(A1,FIND("(",A1)+1,(FIND(")",A1))-(FIND("(",A1)+1))),0,(MID(A1,FIND("(",A1)+1,(FIND(")",A1))-(FIND("(",A1)+1)))+0),
og træk derefter autofyldhåndtaget ned for at udtrække tal, der er i parentes fra hver celle. Se skærmbillede:
doc sum numre i parentes 2

Tip: i formlen er A1 den celle, du vil udtrække tallene inden for parentes fra.

2. Vælg en celle, hvor du vil placere summeringsresultatet, indtast = SUM (B1: B8), og tryk på Indtast nøgle. Se skærmbillede:
doc sum numre i parentes 3

Tip: i formlen er B1: B8 de numre, du ekstraherede fra den oprindelige liste med tekststreng og vil opsummere.


Summenumre inden for parenteser kun med defineret funktion

Du kan også anvende en defineret funktion til at summe tal inden for parentes.

1. Trykke Alt + F11 taster for at aktivere Microsoft Visual Basic til applikationer vindue, skal du klikke på indsatte > Moduler, og indsæt nedenunder kode i det tomme script.

VBA: Sumtal i parentes

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

doc sum numre i parentes 4

2. Gem koden, og vælg en celle, der placerer resultatet, og indtast denne formel = SumBracket (A1: A8), tryk på Indtast nøgle. Se skærmbillede:
doc sum numre i parentes 5


Summenumre inden for parenteser kun med Kutools til Excel

Faktisk med Kutools til Excel's Uddrag tekst funktion til at udtrække tal inden for parentes og derefter anvende Summen af ​​absolutte værdier funktion for at opsummere tallene.

Kutools til Excel, med mere end 300 praktiske funktioner, der gør dine job lettere. 

Efter installation Kutools til Excel, gør venligst som nedenfor :(Gratis download Kutools til Excel nu!)

1. Vælg de strenge, du vil udtrække tal i parentes, og klik på Kutools> tekst > Uddrag tekst. Se skærmbillede:
doc sum numre i parentes 6

2. i Uddrag tekst dialog, skal du åbne (*) ind i tekst tekstboks, og klik på Tilføj at tilføje det til Uddragsliste. Klik derefter på Ok, og for at vælge en celle for at placere de udpakkede numre i poppedialogen, f.eks. C1. Se skærmbillede:

Bemærk: Hvis der er andre udvindingsregler i Uddragsliste sektion, skal du fjerne markeringen af ​​disse udtrækningsregler, og kun kontrollere den nye tilføjede ekstraktregel for (*).


doc sum numre i parentes 7 skud pil til højre doc sum numre i parentes 8

3. klik OK, og nu trækkes tallene i parentes ud. Som standard genkendes tallene inden for parenteser som negative, du skal summere deres absolutte værdier.
doc sum numre i parentes 9

4. Vælg en celle, hvor du vil placere beregningsresultatet, klik Kutools > Formelhjælper > Math & Trig > Summen af ​​absolutte værdier. Se skærmbillede:
doc sum numre i parentes 10

5. i Formelhjælper dialog, skal du vælge det interval, som indeholder de udpakkede tal i nummer tekstboks, C1: C8 i dette tilfælde. Klik på Ok, de absolutte værdier for tallene er tilføjet. Se skærmbillede:

doc sum numre i parentes 11 skud pil til højre doc sum numre i parentes 12

Tip. Hvis du vil have en gratis prøveversion af Uddrag tekst , Summen absolut værdis funktion, gå venligst til gratis download Kutools til Excel først, og gå derefter til for at anvende handlingen i henhold til ovenstående trin.

Bedste kontorproduktivitetsværktøjer

🤖 Kutools AI Aide: Revolutionér dataanalyse baseret på: Intelligent udførelse   |  Generer kode  |  Opret brugerdefinerede formler  |  Analyser data og generer diagrammer  |  Aktiver Kutools funktioner...
Populære funktioner: Find, fremhæv eller identificer dubletter   |  Slet tomme rækker   |  Kombiner kolonner eller celler uden at miste data   |   Runde uden formel ...
Super opslag: VLookup med flere kriterier    Multiple Value VLookup  |   VOpslag på tværs af flere ark   |   Fuzzy Lookup ....
Avanceret rulleliste: Opret hurtigt rulleliste   |  Afhængig rulleliste   |  Multivælg rulleliste ....
Column Manager: Tilføj et bestemt antal kolonner  |  Flyt kolonner  |  Skift synlighedsstatus for skjulte kolonner  |  Sammenlign områder og kolonner ...
Fremhævede funktioner: Grid fokus   |  Designvisning   |   Stor Formel Bar    Arbejdsbog & Ark Manager   |  Ressourcebibliotek (Autotekst)   |  Datovælger   |  Kombiner regneark   |  Krypter/Dekrypter celler    Send e-mails efter liste   |  Superfilter   |   Specielt filter (filter fed/kursiv/gennemstreget...) ...
Top 15 værktøjssæt12 tekst Værktøjer (tilføje tekst, Fjern tegn, ...)   |   50 + Chart Typer (Gantt kort, ...)   |   40+ Praktisk formler (Beregn alder baseret på fødselsdag, ...)   |   19 Indsættelse Værktøjer (Indsæt QR-kode, Indsæt billede fra sti, ...)   |   12 Konvertering Værktøjer (Tal til ord, Valutaomregning, ...)   |   7 Flet og del Værktøjer (Avancerede kombinere rækker, Opdel celler, ...)   |   ... og mere

Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid.  Klik her for at få den funktion, du har mest brug for...

Beskrivelse


Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
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