Fórmula do Excel: soma de colunas e linhas correspondentes -

Índice

Fórmula genérica

=SUMPRODUCT(data*(range1=criteria1)*(range2=criteria2))

Resumo

Para somar valores em colunas e linhas correspondentes, você pode usar a função SUMPRODUCT. No exemplo mostrado, a fórmula em J6 é:

=SUMPRODUCT(data*(codes=J4)*(days=J5))

onde dados (C5: G14), dias (B5: B14) e códigos (C4: G4) são intervalos nomeados.

Explicação

A função SUMPRODUCT pode manipular matrizes nativamente, sem exigir a entrada de deslocamento de controle.

Nesse caso, estamos multiplicando todos os valores nos dados do intervalo nomeado por duas expressões que filtram valores não de interesse. A primeira expressão aplica um filtro baseado em códigos:

(codes=J4)

Como J4 contém "A002", a expressão cria uma matriz de valores TRUE FALSE como este:

(FALSE,TRUE,FALSE,FALSE,FALSE)

A segunda expressão filtra no dia:

(days=J5)

Como J4 contém "Quarta", a expressão cria uma matriz de valores TRUE FALSE como este:

(FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE)

No Excel, os valores TRUE FALSE são forçados automaticamente para valores 1 e 0 por qualquer operação matemática, então a operação de multiplicação coage os arrays acima para uns e zeros e cria um array 2D com as mesmas dimensões dos dados originais. O processo pode ser visualizado conforme mostrado abaixo:

Por fim, SUMPRODUCT retorna a soma de todos os elementos na matriz final, 9.

Contar em vez de somar

Se quiser contar os valores correspondentes em vez de somar, você pode encurtar a fórmula para:

=SUMPRODUCT((codes=J4)*(days=J5)) // count only

Observe que essa contagem incluirá células vazias.

Notas

  1. Embora o exemplo mostre apenas uma coluna correspondida, esta fórmula somará corretamente várias colunas correspondidas.
  2. Se você só precisa combinar colunas (não linhas), pode usar uma fórmula como esta.
  3. Para corresponder apenas as linhas, você pode usar a função COUNTIFS.

Artigos interessantes...