SOMASE
Determina quais valores em um intervalo de células atendem a um critério especificado e retorna a soma dos valores correspondentes. Alternativamente, a função pode determinar quais valores em um intervalo de células atendem a um critério e, em seguida, retornar a soma dos valores nas células correspondentes em um segundo intervalo de células.
SOMASE só pode aplicar um único critério a um intervalo. Use SOMASES se precisar aplicar vários critérios para a soma.
SOMASE(Intervalo; Critério [;Intervalo de Soma])
Intervalo: o intervalo de células onde o critério é aplicado.
SOMASE suporta o operador de concatenação de referências (~) somente nos parâmetros de critérios, e somente se o parâmetro opcional Intervalo de Soma for omitido.
Critério: Um critério é uma referência, número ou texto de uma única célula. É usado em comparações com o conteúdo da célula.
Uma referência a uma célula vazia é interpretada como o valor numérico 0.
Uma expressão correspondente pode ser:
-
A number or logical value. A matching cell content equals the number or logical value.
-
A value beginning with a comparator (<, <=, =, >, >=, <>).
For =, if the value is empty it matches empty cells.
For <>, if the value is empty it matches non-empty cells.
For <>, if the value is not empty it matches any cell content except the value, including empty cells.
Nota: "=0" não corresponde a células vazias.
For = and <>, if the value is not empty and can not be interpreted as a number type or one of its subtypes and the property Search criteria = and <> must apply to whole cells is checked, comparison is against the entire cell contents, if unchecked, comparison is against any subpart of the field that matches the criteria. For = and <>, if the value is not empty and can not be interpreted as a Number type or one of its subtypes applies.
-
Other Text value. If the property Search criteria = and <> must apply to whole cells is true, the comparison is against the entire cell contents, if false, comparison is against any subpart of the field that matches the criteria. The expression can contain text, numbers, regular expressions or wildcards (if enabled in calculation options).
A pesquisa suporta caracteres coringa ou expressões regulares. Com as expressões regulares ativadas, você pode inserir "all.*", por exemplo, para encontrar a primeira ocorrência de "all" seguida de qualquer outro caractere. Se deseja pesquisar por um texto que também é uma expressão regular, você deve preceder cada caractere com o caractere "\", ou incluir o texto entre \Q...\E. Você pode ativar a avaliação de caracteres coringa ou expressões regulares em .
Ao usar funções onde um ou mais argumentos são textos de critérios de pesquisa que representam uma expressão regular, a primeira tentativa é de converter o texto do critério em número. Por exemplo, ".0" se converterá em 0.0 e assim por diante. Se tiver sucesso, a verificação não será por expressão regular, mas por conversão numérica. Entretanto, ao mudar de região onde o separador decimal não é mais o ponto, a expressão regular passa a valer. Para forçar a avaliação da expressão regular de uma expressão numérica, utilize uma expressão que não possa ser confundida com um número, como por exemplo, .[0]" ou ".\0" or mesmo "(?i).0".
Intervalo de Soma: Opcional. O intervalo de células cujos valores são somados. Se não houver Intervalo de Soma, os valores de Intervalo são somados.
Esta função é parte integrante da norma Open Document Format for Office Applications (OpenDocument), versão 1.2 (ISO/IEC 26300:2-2015).
Considere a seguinte tabela
|
A
|
B
|
C
|
1
|
Nome do produto
|
Sales
|
Revenue
|
2
|
canudo
|
20
|
65
|
3
|
caneta
|
35
|
85
|
4
|
caderno
|
20
|
190
|
5
|
mochila
|
17
|
180
|
6
|
caneta tinteiro
|
não
|
não
|
Em todos os cálculos abaixo, o intervalo para a soma contém a linha nº 6, que é ignorada por que contém um texto.
Utilização simples
=SOMASE(C2:C6,">=100")
Soma apenas os valores do intervalo C2:C6 que são >=100. Retorna 370 porque as células C2:C3 não atendem ao critério. Os valores de Intervalo são somados porque nenhum Intervalo de Soma é fornecido.
=SOMASE(B2:B5,">=20",C2:C6)
Soma valores do intervalo B2:B6 somente se os valores correspondentes no intervalo A1:A5 forem >=20. Retorna 340 porque a quinta e a sexta linhas não atendem ao critério.
Com expressões regulares
=SOMASE(A2:A6,"caneta",C2:C5)
Soma os valores do intervalo C2:C6 somente se o intervalo correspondente em A2:A6 corresponder exatamente às letras "caneta". Retorna 85 porque as linhas A2 e A4:A6 não atendem ao critério.
=SOMASE(A2:A6,"caneta",C2:C6)
Soma os valores do intervalo C2:C6 somente se a célula correspondente no intervalo A2:A6 contiver as letras "caneta". Retorna o valor 150 porque as linhas A4:A5 não atendem ao critério.
=SOMASE(ProductName,"pen*",Revenue)
Um intervalo nomeado pode ser fornecido como parâmetro Intervalo ou Intervalo de Soma. Por exemplo, se as colunas da tabela acima forem denominadas respectivamente "ProductName", "Sales" e "Revenue", a função retornará 150. Esta função só funcionará conforme descrito se você tiver definido os nomes das colunas usando a caixa de diálogo Definir nomes.
Critério como referência
Se desejar mudar o critério mais facilmente, pode especificar uma célula separada e usá-la em referencia como condição para a função SOMASE. Por exemplo:
=SOMASE(A2:A6,E2,C2:C6)
Se E2="can", a função retorna 85 por que a referência à célula é substituída por seu conteúdo.