Usando SUMPRODUCT no Excel com filtros

Usando SUMPRODUCT no Excel com filtros

Estou tendo problemas para usar SUMPRODUCTjunto com um filtro. Eu tenho a seguinte fórmula:

=SUMPRODUCT(LEN(B3:B7)-LEN(SUBSTITUTE(B3:B7;".";"")))

Preciso contar quantos "." estão na faixa. Porém quando utilizo alguns filtros, ele sempre conta todos os "." nesse intervalo, mas quero apenas contar os visíveis.

Normal:

normal

Depois do filtro:

depois do filtro

Como posso fazer isso?

Responder1

Adicione uma condição à sua SUMPRODUCTfórmula:

=SUMPRODUCT((LEN(D3:D8)-LEN(SUBSTITUTE(D3:D8,".","")))*SUBTOTAL(103,OFFSET(D$2,ROW($A$1:$A$6),0)))

SUBTOTALé capaz de ignorar linhas ocultas. Nesse caso, usamos 103porque retorna 1células não vazias, o que é útil. Temos que modificá-lo com a OFFSETfunção para que ela retorne a contagem como um array em vez de um único valor. O ponto chave está na seleção dos intervalos.

D3:D8deve ser o intervalo onde você deseja contar o texto.
D$2deve ser a célula diretamente acima desse intervalo,
$A$1:$A$6pode estar em qualquer coluna, mas deve começar na linha 1 e ter tantas linhas quanto o intervalo onde você está contando o texto. Usei A1:A6apenas por hábito e conveniência. Ele serve apenas para nos fornecer uma matriz de números para alimentar, OFFSETpara que possamos SUBTOTALbrincar bem com SUMPRODUCT.

Passo 1
Passo 2

informação relacionada