Dados na coluna A
Black |
Black |
Black |
Purple |
Purple |
Grey |
Grey |
Grey |
Grey |
Atenção que as fórmulas têm que ser inseridas com ARRAY FÓRMULAS isto é: Ctrl+Shift+Enter.
B1 =ÍNDICE(A1:A100;MODA(SE(A1:A100<>"";CORRESP(A1:A100;A1:A100;0))))
B2 =ÍNDICE(A1:A100;MODA(SE((A1:A100<>"")*(A1:A100<>ÍNDICE(A1:A100;MODA(SE(A1:A100<>"";CORRESP(A1:A100;A1:A100;0)))));CORRESP(A1:A100;A1:A100;0))))
B3 =ÍNDICE(A1:A100;MODA(SE(((A1:A100<>"")*(A1:A100<>ÍNDICE(A1:A100;MODA(SE(A1:A100<>"";CORRESP(A1:A100;A1:A100;0)))))*(A1:A100<>ÍNDICE(A1:A100;MODA(SE((A1:A100<>"")*(A1:A100<>ÍNDICE(A1:A100;MODA(SE(A1:A100<>"";CORRESP(A1:A100;A1:A100;0)))));CORRESP(A1:A100;A1:A100;0))))));CORRESP(A1:A100;A1:A100;0))))
Ou seja, em B1 ficas com o mais repetido, B2 segundo mais repetido e B3 terceiro mais repetido.
Ok?
kodiak
EDIT:
Mais uma solução mas provavelmente mais simples e dá para ir colocando as posições que queremos. Atenção que no caso de ter duas palavras repetidas o mesmo número de vezes, aparece a primeira da lista.
Mantendo os mesmos dados na coluna A, colocar na célula B1 (novamente como ARRAY FÓRMULAS):
=ÍNDICE(
A1:A9;CORRESP(MÁXIMO(MAIOR(((SE((LIN(INDIRECTO("1:"&LINS(
A1:A9))))=(CORRESP(
A1:A9;
A1:A9;0));CONTAR.SE(
A1:A9;
A1:A9);0))+((100000-(LIN(INDIRECTO("1:"&LINS(
A1:A9)))))/100000));
3);1);((SE((LIN(INDIRECTO("1:"&LINS(
A1:A9))))=(CORRESP(
A1:A9;
A1:A9;0));CONTAR.SE(
A1:A9;
A1:A9);0))+((100000-(LIN(INDIRECTO("1:"&LINS(
A1:A9)))))/100000));0))
Repara que se quiseres alterar o intervalo tens de mudar todos os
A1:A9
O resultado a devolver é alterar de 1 a ..... o que está a vermelho