Função SOMA.SE.S

Devolve a soma dos valores das células de um intervalo que cumpram os vários critérios nos vários intervalos.

Sintaxe

SUMIFS(Func_Range; Range1; Criterion1 [ ; Range2; Criterion2 [;...]]))

Func_Range – required argument. It is a range of cells, a name of a named range or a label of a column or a row containing values for calculating the sum.

Criterion1 – required argument. A string expression representing a logical condition or a cell reference to such string expression. The expression can contain text, numbers, regular expressions or wildcards (if enabled in calculation options).

Range2 – Optional. Range2 and all the following mean the same as Range1.

Criterion2 – Optional. Criterion2 and all the following mean the same as Criterion1.

Ícone de aviso

Func_Range and Range1, Range2... must have the same size, otherwise the function returns err:502 - Invalid argument.


Ícone de nota

The logical relation between criteria can be defined as logical AND (conjunction). In other words, if and only if all given criteria are met, a value from the corresponding cell of the given Func_Range is taken into calculation.


The function can have up to 255 arguments, meaning that you can specify 127 criteria ranges and criteria for them.

Ícone de aviso

If a cell contains TRUE, it is treated as 1, if a cell contains FALSE – as 0 (zero).


Ícone de nota

Esta função é parte integrante da norma Open Document Format for Office Applications (OpenDocument), versão 1.2 (ISO/IEC 26300:2-2015).


Exemplos

Considere a seguinte tabela

A

B

C

1

Nome do produto

Vendas

Rendimento

2

pencil

20

65

3

pen

35

85

4

caderno

20

190

5

book

17

180

6

pencil-case

não

não


Ícone de aviso

In all examples below, ranges for calculation contain the row #6, which is ignored because it contains text.


Utilização

=SOMA.SE.S(B2:B6;B2:B6;">=20")

Calcula a soma para os valores do intervalo B2:B6 que são maiores ou iguais a 20. Devolve 75, uma vez que a quinta linha não cumpre o critério.

=SOMA.SE.S(C2:C6;B2:B6;">=20";C2:C6;">70")

Calcula a soma para os valores do intervalo C2:C6 que são maiores que 70 e que correspondem às células de B2:B6 com valores maiores ou iguais a 20. Devolve 275, uma vez que a segunda e a quinta linha não cumprem pelo menos um dos critérios.

Utilizar expressões regulares e funções incorporadas

=SOMA.SE.S(C2:C6;B2:B6;">"&MÍNIMO(B2:B6);B2:B6;"<"&MÁXIMO(B2:B6))

Calcula a soma dos valores no intervalo C2:C6 que coincidam com todos os valores no intervalo B2:B6, exceto os valores máximo e mínimo. Devolve 255, uma vez que a terceira e a quinta linha não cumprem, pelo menos, um dos critérios.

=SOMA.SE.S(C2:C6;A2:A6;"pen.*";B2:B6;"<"&MÁXIMO(B2:B6))

Calcula a soma dos valores do intervalo C2:C6 que correspondem a todos os valores do intervalo A2:A6 que começam com as letras "pen" e todas as células do intervalo B2:B6, exceto seu máximo. Devolve 65 porque apenas a segunda linha cumpre todos os critérios.

Referência a uma célula como critério

Se quiser alterar o critério facilmente, pode especificar o critério numa célula distinta e utilizar uma referência a esta célula como condição da função SOMA.SE.S. Por exemplo, a função acima pode ser escrita da seguinte forma:

=SOMA.SE.S(C2:C6;A2:A6;E2&".*";B2:B6;"<"&MÁXIMO(B2:B6))

Se E2 = pen, a função devolve 65, uma vez que a ligação à célula é substituída pelo seu conteúdo.

Abrir ficheiro com exemplo: