Eu realmente não tentei isso com 10.000 linhas, mas tente
=INDEX($S$1:$S$50, MATCH(MAX(COUNTIF($G$1:$G$10000,$S$1:$S$50)), COUNTIF($G$1:$G$10000,$S$1:$S$50), 0))
em que os valores de estado exclusivos estão em S1:S50
. (Naturalmente, essa é uma fórmula de matriz;
então você precisa digitar Ctrl + Deslocar + Enter quando entrar nele.)
-
COUNTIF($G$1:$G$10000,$S$1:$S$50)
conta quantas vezes cada um dos estados (S1:S50
) aparece na colunaG
, produzindo uma matriz virtual de 50 números que, em média, 200 (porque eles somam 10.000). Note que esta sub-expressão aparece duas vezes, e, sim, na pior das hipóteses, requer comparações de 500.000 (50 × 10.000) - mas, em média, requer metade disso. -
MAX(COUNTIF($G$1:$G$10000,$S$1:$S$50))
informa o maior número neste array virtual. Será um número ≥ 200 que representa a frequência (contagem) do estado mais frequentemente encontrado. - %código% localiza a localização no array virtual do valor máximo. Este será um número entre 1 e 50, identificando o estado mais freqüentemente encontrado.
- %código% dá-lhe o nome do estado mais frequentemente encontrado.