Fórmula do Excel: Encontrar o texto mais frequente com critérios
Em alguns casos, poderá precisar de identificar o texto que surge com maior frequência com base num determinado critério no Excel. Este tutorial apresenta uma fórmula matricial para executar essa tarefa e explica os seus argumentos.
Fórmula genérica:
| =INDEX(rng_1,MODE(IF(rng_2=criteria,MATCH(rng_1,rng_1,0)))) |
Argumentos
| Rng_1: the range of cells that you want to find the most frequent text. |
| Rng_2: the range of cells that contain the criteria you want to use. |
| Criteria: the condition you want to find text based on. |
Valor de retorno
Esta fórmula devolve o texto que ocorre com maior frequência de acordo com um critério específico.
Como funciona esta fórmula
Exemplo: Tem um intervalo chamado «Lista de Células» com produtos, ferramentas e utilizadores e pretende agora identificar a ferramenta mais utilizada para cada produto. Utilize a seguinte fórmula na célula G3:
| =INDEX($C$3:$C$12,MODE(IF($B$3:$B$12=F3,MATCH($C$3:$C$12,$C$3:$C$12,0)))) |
Prima Shift + Ctrl + Enter em simultâneo para obter o resultado correto. Depois, arraste a alça de preenchimento para aplicar esta fórmula.
Explicação
MATCH($C$3:$C$12,$C$3:$C$12,0): a função CORRESP devolve a posição do valor_procurado numa linha ou coluna. Neste caso, a fórmula devolve o resultado em matriz {1;2;3;4;2;1;7;8;9;7}, que indica a posição de cada valor no intervalo $C$3:$C$12. 
IF($B$3:$B$12=F3,MATCH($C$3:$C$12,$C$3:$C$12,0)): a função SE é utilizada para definir uma condição. Neste caso, a fórmula é interpretada como IF($B$3:$B$12=”KTE”,{1;2;3;4;2;1;7;8;9;7}), e o resultado em matriz devolve {1;FALSE;3;FALSE;FALSE;1;FALSE;FALSE;9;FALSE}.
MODE(IF($B$3:$B$12=F3,MATCH($C$3:$C$12,$C$3:$C$12,0))): a função MODA identifica o valor mais frequente num intervalo. Neste caso, a fórmula encontra o número mais frequente no resultado em matriz da função SE, que pode ser interpretado como MODE({1;FALSE;3;FALSE;FALSE;1;FALSE;FALSE;9;FALSE}) e devolve 1. 
INDEX function: a função ÍNDICE devolve o valor numa tabela ou matriz com base na localização indicada. Neste caso, a fórmula INDEX($C$3:$C$12,MODE(IF($B$3:$B$12=F3,MATCH($C$3:$C$12,$C$3:$C$12,0)))) será reduzida para INDEX($C$3:$C$12,1).
Observação
Se houver dois ou mais textos com a mesma frequência, a fórmula devolverá aquele que aparecer em primeiro lugar.
Ficheiro de exemplo
Clique para descarregar o ficheiro de exemplo
Fórmulas relacionadas
- Verificar se uma célula contém um texto específico
Para verificar se uma célula contém alguns textos no intervalo A, mas não contém os textos no intervalo B, pode utilizar uma fórmula matricial que combina as funções CONTAR, PROCURAR e E no Excel - Verificar se uma célula contém um de vários valores, mas exclui outros valores
Este tutorial apresenta uma fórmula para resolver rapidamente a tarefa de verificar se uma célula contém um dos valores pretendidos, excluindo outros, no Excel, e explica os respetivos argumentos da fórmula. - Verificar se a célula contém um dos elementos
Imagine que, no Excel, tem uma lista de valores na coluna E e pretende verificar se as células da coluna B contêm algum desses valores — devolvendo VERDADEIRO ou FALSO. - Verificar se a célula contém um número
Por vezes, é necessário verificar se uma célula contém caracteres numéricos. Este tutorial apresenta-lhe uma fórmula que devolve VERDADEIRO se a célula contiver um número e FALSO caso contrário.
As Melhores Ferramentas de Produtividade para o Office
Kutools for Excel – Ajuda-o a destacar-se da multidão
Kutools for Excel Oferece mais de 300 funcionalidades,garantindo que tudo o que precisa está a apenas um clique…
Office Tab – Ative a leitura e edição com separadores no Microsoft Office (incluindo o Excel)
- Um segundo para alternar entre dezenas de documentos abertos!
- Reduza centenas de cliques diários e diga adeus à tendinite do rato.
- Aumente a sua produtividade em 50 % ao visualizar e editar vários documentos simultaneamente.
- Traz uma navegação eficiente com separadores ao Office (incluindo o Excel), tal como no Chrome, Edge e Firefox.