Ir para o conteúdo principal

Como somar números entre colchetes somente no Excel?

Se houver uma lista de strings de texto e você quiser apenas somar todos os números entre colchetes como mostrado na imagem abaixo, como você pode lidar com isso rapidamente? Neste artigo, apresento alguns truques para somar os números entre colchetes apenas no Excel.


Some os números entre colchetes apenas com a fórmula

Para somar números apenas entre parênteses, você pode primeiro extrair os números que estão entre parênteses e, em seguida, somá-los.

1. Selecione uma célula em branco ao lado da célula que deseja somar seus números entre colchetes, B2 por exemplo, digite esta fórmula
=IF(ISERROR(MID(A1,FIND("(",A1)+1,(FIND(")",A1))-(FIND("(",A1)+1))),0,(MID(A1,FIND("(",A1)+1,(FIND(")",A1))-(FIND("(",A1)+1)))+0),
e arraste a alça de preenchimento automático para baixo para extrair os números entre colchetes de cada célula. Veja a imagem:
doc sum números entre colchetes 2

Dica: na fórmula, A1 é a célula da qual você deseja extrair os números entre colchetes.

2. Selecione uma célula na qual você colocará o resultado da soma, digite = SOMA (B1: B8)e pressione Entrar chave. Veja a imagem:
doc sum números entre colchetes 3

Dica: na fórmula, B1: B8 são os números que você extraiu da lista original de sequência de texto e deseja somar.


Soma os números entre parênteses apenas com função definida

Você também pode aplicar uma função definida para somar números entre colchetes.

1. Pressione Alt + F11 chaves para habilitar Microsoft Visual Basic para Aplicações janela, clique em inserção > Móduloe cole o código abaixo no script em branco.

VBA: soma os números entre parênteses

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 números entre colchetes 4

2. Salve o código e selecione uma célula que colocará o resultado e insira esta fórmula = SumBracket (A1: A8), pressione Entrar chave. Veja a imagem:
doc sum números entre colchetes 5


Some os números entre colchetes apenas com o Kutools para Excel

Na verdade, com Kutools for Excel'S Extrair Texto função para extrair números entre colchetes e, em seguida, aplique o Soma dos valores absolutos função para somar os números.

Kutools for Excel, com mais de 300 funções úteis, tornam seus trabalhos mais fáceis. 

Depois de instalar Kutools para Excel, faça o seguinte :(Baixe grátis o Kutools para Excel agora!)

1. Selecione as strings das quais deseja extrair números entre colchetes e clique em KutoolGenericNames> Texto > Extrair Texto. Veja a imagem:
doc sum números entre colchetes 6

2. No Extrair Texto diálogo, entrar (*) no Texto caixa de texto e clique Adicionar para adicioná-lo ao Extrair lista. Então clique Ok, e para selecionar uma célula para colocar os números extraídos na caixa de diálogo pop-up, C1 por exemplo. Veja a imagem:

Observação: Se houver outras regras de extração no Extrair lista seção, desmarque essas regras de extração e verifique apenas a nova regra de extração adicionada de (*).


doc sum números entre colchetes 7 seta para a direita doc sum números entre colchetes 8

3. Clique OK, e agora os números entre colchetes são extraídos. Por padrão, os números entre colchetes são reconhecidos como negativos, você precisa somar seus valores absolutos.
doc sum números entre colchetes 9

4. Selecione uma célula na qual você colocará o resultado do cálculo, clique Kutools > Fórmula Helper > Matemática e Trig > Soma dos valores absolutos. Veja a imagem:
doc sum números entre colchetes 10

5. No Fórmula Helper diálogo, selecione o intervalo que contém os números extraídos em Sessão caixa de texto, C1: C8 neste caso. Clique Ok, os valores absolutos dos números foram adicionados. Veja a imagem:

doc sum números entre colchetes 11 seta para a direita doc sum números entre colchetes 12

Gorjeta. Se você quiser ter um teste gratuito do Extrair Texto e Valor absoluto da somafunção s, acesse o download gratuito do Kutools para Excel primeiro e, em seguida, aplique a operação de acordo com as etapas acima.

Melhores ferramentas de produtividade de escritório

🤖 Assistente de IA do Kutools: Revolucionar a análise de dados com base em: Execução Inteligente   |  Gerar Código  |  Crie fórmulas personalizadas  |  Analise dados e gere gráficos  |  Invocar funções do Kutools...
Recursos mais comuns: Encontre, destaque ou identifique duplicatas   |  Excluir linhas em branco   |  Combine colunas ou células sem perder dados   |   Rodada sem Fórmula ...
Super pesquisa: VLookup de múltiplos critérios    VLookup de múltiplos valores  |   VLookup em várias planilhas   |   Pesquisa Difusa ....
Lista suspensa avançada: Crie rapidamente uma lista suspensa   |  Lista suspensa de dependentes   |  Lista suspensa de seleção múltipla ....
Gerenciador de colunas: Adicione um número específico de colunas  |  Mover colunas  |  Alternar status de visibilidade de colunas ocultas  |  Compare intervalos e colunas ...
Recursos em destaque: Foco da Grade   |  Vista de Design   |   Grande Barra de Fórmula    Gerenciador de pastas de trabalho e planilhas   |  Biblioteca (Auto texto)   |  Data Picker   |  Combinar planilhas   |  Criptografar/Descriptografar Células    Enviar e-mails por lista   |  Super Filtro   |   Filtro Especial (filtro negrito/itálico/tachado...) ...
15 principais conjuntos de ferramentas12 Texto Ferramentas (Adicionar texto, Remover Personagens, ...)   |   50+ de cores Tipos (Gráfico de Gantt, ...)   |   Mais de 40 práticos Fórmulas (Calcule a idade com base no aniversário, ...)   |   19 Inclusão Ferramentas (Insira o código QR, Inserir imagem do caminho, ...)   |   12 Conversão Ferramentas (Números para Palavras, Conversão de moedas, ...)   |   7 Unir e dividir Ferramentas (Combinar linhas avançadas, Dividir células, ...)   |   ... e mais

Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo.  Clique aqui para obter o recurso que você mais precisa...

Descrição


Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
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