Como esta função SUMPRODUCT (COUNTIF ()) funciona?

1

Eu estava procurando uma solução para contar valores distintos em um intervalo e encontrei este artigo . O exemplo fornece uma lista de dez nomes compostos de quatro entradas exclusivas. Em seguida, ele usa a seguinte fórmula para contar as quatro entradas exclusivas: =SUMPRODUCT(1/COUNTIF(B3:B12,B3:B12))

Eu tenho uma compreensão básica de como funcionam as funções SUMPRODUCT e COUNTIF . Mas eu não entendo essa fórmula.

  • O que é COUNTIF fazendo com que ele produza uma matriz de {1,2,2,3,3,3}?
  • Como ele SUMPRODUCT interage com isso para gerar 4 ?

Quando eu duplico os dados e digito =COUNTIF(B3:B12,B3:B12) , ele gera 3 .

  • O que esse valor significa?
  • Como isso está vinculado à matriz {1,2,2,3,3,3}?
por Trevor D 02.02.2016 / 23:13

1 resposta

3

Esse exemplo {1,2,2,3,3,3} é, na verdade, completamente arbitrário e não tem nada a ver com os resultados reais. O COUNTIF() retornaria esse {3,3,3,2,2,3,3,3,2,2} . Esse array é o resultado do COUNTIF() calculando para cada elemento do segundo argumento. Então, como diz o artigo, cada elemento dessa matriz é usado na divisão com 1 como numerador. Ou seja, sua matriz se torna {1/3,1/3,1/3,1/2...} SUMPRODUCT() então soma todos os elementos da matriz para obter quatro.

    
por 03.02.2016 / 16:30