Excel, conta valores únicos se critérios - conjunto de dados ENORME

0

problema eu tenho 300.000 entradas

Colum A = YEAR
Colum B = month
Colum C = customer number

G5 to G13 = criteria

Eu quero contar quantos clientes únicos pr. ano - tentei usar uma fórmula de matriz - mas isso não é bom em um conjunto de dados tão grande ... eu acho ...

fórmula usada

=SUM(--(FREKVENS(HVIS(A:A=G5;SAMMENLIGN(C:C;C:C;0));RÆKKE(B:B)-RÆKKE(C1)+1)>0))

ou em inglês:

=SUM(--(FREQUENCY(IF(A:A=G5,MATCH(C:C,C:C,0)),ROW(B:B)-ROW(C1)+1)>0))

Isso funciona muito bem se eu tiver um pequeno conjunto de dados - mas com o meu conjunto de dados ele só começa a calcular e fica em 100% cpu por horas

Então, o que eu faço?

    
por Michael Rygaard 07.03.2016 / 16:17

1 resposta

0

Usar DB não é uma opção - como outros devem ser capazes de usar isto: (

A solução que eu fiz não é bonita, mas funciona

1) Faça uma cópia de todos os clientes e remova os duplicados 2) use o VLOOKUP para encontrar o ano (uma vez que a lista é ordenada de maneira inversa, ela terá a primeira vez que eu ver um cliente) 3) agora eu faço uma contagem simples com o ano como critério.

Não é bonito, especialmente porque eu tive que copiar 2) para baixo 465.451 linhas

    
por 09.03.2016 / 08:35