Compartilhar via


Como usar uma instrução AND ou OR lógica em uma instrução SUM+IF no Excel

Resumo

No Microsoft Excel, quando você usa as funções lógicas AND e/ou OR dentro de uma instrução SUM+IF para testar um intervalo para mais de uma condição, ele pode não funcionar conforme o esperado. Uma instrução IF aninhada oferece essa funcionalidade; no entanto, este artigo explora um segundo método mais simples que utiliza as fórmulas a seguir.

Para condições AND

=SUM(IF(Test1*Test2*...*Testn))

Para condições OR

=SUM(IF(Test1+Test2+...+Testn))

Mais informações

Use uma instrução SUM+IF para contar o número de células em um intervalo que passa em um determinado teste ou para somar esses valores em um intervalo para o qual os valores correspondentes em outro intervalo (ou o mesmo) atendem aos critérios especificados. Ele se comporta de forma semelhante à função DSUM no Microsoft Excel.

Exemplo

Este exemplo conta o número de valores no intervalo A1:A10 que ficam entre 1 e 10, inclusive.

Você pode usar a seguinte instrução IF aninhada:

=SUM(IF(A1:A10>=1,IF(A1:A10<=10,1,0)))

O método a seguir também funciona e é mais fácil de ler se você estiver realizando vários testes:

=SUM(IF((A1:A10>=1)*(A1:A10<=10),1,0))

O método a seguir conta o número de datas que se enquadram entre duas datas determinadas:

=SUM(IF((A1:A10>=DATEVALUE("1/10/99"))*(A1:A10<=DATEVALUE("2/10/99")),1,0))

Observação

  • Você deve inserir essas fórmulas como fórmulas de matriz pressionando CTRL+SHIFT+ENTER simultaneamente. No Macintosh, pressione COMMAND+RETURN.
  • Matrizes não podem se referir a colunas inteiras.

Com esse método, você está multiplicando os resultados de um teste lógico por outro teste lógico para retornar TRUEs e FALSEs para a função SUM. Você pode igualá-los a:

TRUE*TRUE=1
TRUE*FALSE=0
FALSE*TRUE=0
FALSE*FALSE=0

O método mostrado acima conta o número de células no intervalo A1:A10 para o qual ambos os testes são avaliados como TRUE. Para somar valores em células correspondentes (por exemplo, B1:B10), modifique a fórmula conforme mostrado abaixo:

=SUM(IF((A1:A10>=1)*(A1:A10<=10),B1:B10,0))

Você pode implementar um OR em uma instrução SUM+IF da mesma forma. Para fazer isso, modifique a fórmula mostrada acima substituindo o sinal de multiplicação (*) por um sinal de adição (+). Ele fornece a seguinte fórmula genérica:

=SUM(IF((Test1)+(Test2)+...+(Testn),1,0))

Referências

Para obter mais informações sobre como calcular um valor com base em uma condição, selecione a Ajuda do Microsoft Excel no menu Ajuda, digite sobre como calcular um valor com base em uma condição no Assistente do Office ou no Assistente de Resposta e selecione Pesquisar.