Como exibir o nome associado à pontuação mais alta no Excel?
Ao analisar desempenho ou resultados no Excel, surge frequentemente a necessidade de identificar quem obteve a pontuação mais elevada num conjunto de dados que inclui nomes e os respetivos valores — por exemplo, nomes de alunos numa coluna e as suas notas noutra. O objetivo vai além de simplesmente encontrar a pontuação mais alta: pretende-se também revelar o nome (ou nomes, em caso de empate) da pessoa que alcançou esse resultado. Esta abordagem é amplamente utilizada em cenários como o acompanhamento dos melhores vendedores, classificações de alunos, avaliações de desempenho de colaboradores ou qualquer contexto onde a ordenação dos resultados seja essencial.
Abaixo encontrará várias soluções práticas, acompanhadas de instruções passo a passo e dicas úteis para evitar erros comuns. Escolha a que melhor se adapta ao volume dos seus dados e às suas necessidades de relatório.
Apresentar o nome correspondente à pontuação mais elevada com fórmulas
Código VBA – Encontrar e apresentar automaticamente o(s) nome(s) da pontuação mais elevada
Apresentar o nome correspondente à pontuação mais elevada com fórmulas
Para recuperar o nome da pessoa com a pontuação mais elevada, as fórmulas seguintes ajudam-no a obter o resultado pretendido. Este método é ideal para conjuntos de dados pequenos e médios e revela-se eficaz quando pretende identificar rapidamente o melhor desempenho sem recorrer a ferramentas adicionais.
Para encontrar o nome associado à pontuação mais elevada, utilize a combinação ÍNDICEe CORRESPda seguinte forma:
1. Introduza a seguinte fórmula numa célula vazia onde pretende apresentar o nome (por exemplo, na célula C2):
=INDEX(A2:A14,MATCH(MAX(B2:B14),B2:B14,FALSE))&" Scored "&MAX(B2:B14) Após introduzir a fórmula, prima Enter para confirmar. A fórmula devolverá o primeiro nome que encontrar com a pontuação mais elevada. Por exemplo, se tanto o João como a Alice obtiverem 98, apenas a primeira ocorrência será devolvida por esta fórmula.

Notas:
1. Na fórmula acima, A2:A14 é a lista de nomes da qual pretende obter o nome e B2:B14 é a lista de pontuações. Certifique-se de que os intervalos correspondem exatamente aos seus dados.
2. A fórmula devolve apenas o primeiro nome correspondente. Se várias pessoas partilharem a pontuação mais elevada, poderá querer apresentar todos os nomes — veja abaixo uma solução prática.
Introduza a seguinte fórmula em qualquer célula (por exemplo, D2):
=INDEX($A$2:$A$14,SMALL(IF($B$2:$B$14=MAX($B$2:$B$14),ROW($B$2:$B$14)-1),ROW(B2)-1)) Após introduzir a fórmula, prima simultaneamente Ctrl + Shift + Enter (e não apenas Enter) para a transformar numa fórmula matricial. Aparecerá o primeiro nome com a pontuação mais elevada. Em seguida, selecione a célula com a fórmula e arraste a alça de preenchimento para baixo — continue até começarem a surgir valores de erro. Cada linha mostrará outra pessoa que partilha a pontuação mais alta, o que é especialmente útil em caso de empates, permitindo-lhe listar todos os vencedores.

Se a sua versão do Excel suportar matrizes dinâmicas (como o Microsoft 365 ou o Excel 2021 e versões posteriores), pode utilizar uma abordagem ainda mais simples. Experimente introduzir esta fórmula numa célula — basta premir Enter:
=FILTER(A2:A14,B2:B14=MAX(B2:B14)) Esta fórmula apresenta automaticamente todos os nomes principais nas células abaixo, sem necessidade de arrastar ou utilizar atalhos especiais de teclado — uma solução conveniente e eficaz para as versões mais recentes do Excel.
As fórmulas são excelentes para consultas rápidas, mas podem não ser a melhor opção para conjuntos de dados muito grandes, já que o desempenho pode sofrer ao processar milhares de linhas. Além disso, exigem referências de intervalo consistentes para garantir resultados precisos sempre que forem adicionadas ou removidas linhas – por isso, verifique sempre com atenção a seleção dos seus dados.
Código VBA – Encontrar e apresentar automaticamente o(s) nome(s) da pontuação mais elevada
Utilizar macros VBA oferece uma forma flexível e automatizada de identificar e apresentar todos os nomes associados à pontuação mais elevada no seu conjunto de dados — especialmente quando as fórmulas tradicionais se tornam complexas ou insuficientes para listas extensas. Com VBA, pode personalizar a lógica exatamente de acordo com as necessidades do seu relatório e garantir que as atualizações sejam tratadas automaticamente, tornando-o ideal para análises repetidas ou processamento em lote.
1. Abra a sua pasta de trabalho do Excel, clique em Programador > Visual Basic. Na janela Microsoft Visual Basic para Aplicações, clique em Inserir > Módulo para inserir um módulo em branco.
Copie e cole o seguinte código VBA na janela do módulo:
Sub ShowTopNames()
Dim rngNames As Range, rngScores As Range, outCell As Range
Dim nArr As Variant, sArr As Variant
Dim i As Long, maxVal As Double, hasVal As Boolean
Dim namesBuf As String
On Error Resume Next
Set rngNames = Application.InputBox("Please select the name column (single column)", "Top Names", Type:=8)
Set rngScores = Application.InputBox("Please select the score column (single column, same rows as names)", "Top Names", Type:=8)
Set outCell = Application.InputBox("Please select the output cell (optional, click Cancel to skip)", "Top Names", Type:=8)
On Error GoTo 0
If rngNames Is Nothing Or rngScores Is Nothing Then Exit Sub
If rngNames.Rows.Count <> rngScores.Rows.Count Or rngNames.Columns.Count <> 1 Or rngScores.Columns.Count <> 1 Then
MsgBox "Range mismatch: Name column and score column must be single columns with the same number of rows.", vbExclamation
Exit Sub
End If
nArr = rngNames.Value2
sArr = rngScores.Value2
hasVal = False
For i = 1 To UBound(sArr, 1)
If IsNumeric(sArr(i, 1)) And Not IsEmpty(sArr(i, 1)) Then
If Not hasVal Then
maxVal = CDbl(sArr(i, 1))
hasVal = True
ElseIf CDbl(sArr(i, 1)) > maxVal Then
maxVal = CDbl(sArr(i, 1))
End If
End If
Next i
If Not hasVal Then
MsgBox "No valid numeric values found in the score column.", vbInformation
Exit Sub
End If
rngNames.EntireRow.Interior.ColorIndex = xlNone
For i = 1 To UBound(sArr, 1)
If IsNumeric(sArr(i, 1)) Then
If CDbl(sArr(i, 1)) = maxVal Then
rngNames.Cells(i, 1).EntireRow.Interior.Color = RGB(255, 255, 153) ' Light yellow
If Len(namesBuf) > 0 Then namesBuf = namesBuf & ", "
namesBuf = namesBuf & CStr(nArr(i, 1))
End If
End If
Next i
If Not outCell Is Nothing Then
outCell.Value = "Top Score: " & maxVal & " | Name(s): " & namesBuf
End If
MsgBox "Top Score = " & maxVal & vbCrLf & "Name(s): " & namesBuf, vbInformation, "Highest Score"
End Sub
2. Em seguida, prima a tecla F5 para executar este código. Irá ver três mensagens: Selecione a coluna dos nomes (uma única coluna). Arraste para selecionar apenas os nomes (por exemplo, A2:A14) → OK. Selecione a coluna das pontuações (uma única coluna, com as mesmas linhas que os nomes). Arraste para selecionar as pontuações (por exemplo, B2:B14) → OK. Selecione a célula de saída (opcional). Clique numa célula de destino (por exemplo, D2) para colocar o resultado.
Após a execução do código, o resultado será apresentado na célula especificada e todas as linhas completas dos participantes empatados com a pontuação mais elevada serão destacadas a amarelo-claro.
Tabela Dinâmica – Utilize uma Tabela Dinâmica para apresentar o nome correspondente à pontuação mais elevada
As Tabelas Dinâmicas no Excel oferecem uma forma visual e interativa de analisar e resumir dados. São particularmente úteis para lidar com conjuntos de dados maiores, realizar análises por grupo e identificar rapidamente valores máximos únicos — como descobrir o melhor classificado em cada categoria ou globalmente numa lista. Este método não requer fórmulas nem programação, sendo ideal para utilizadores que preferem soluções baseadas em cliques e tarefas regulares de elaboração de relatórios.
O fluxo de trabalho básico para utilizar uma Tabela Dinâmica para este propósito é o seguinte:
1. Selecione qualquer célula dentro do seu intervalo de dados (incluindo as colunas de nomes e pontuações) e vá a Inserir > Tabela Dinâmica. Na caixa de diálogo, confirme o intervalo de dados e escolha colocar a tabela dinâmica numa nova folha ou numa folha existente, conforme preferir.
2. No painel Campos da Tabela Dinâmica, arraste o campo Nome para a área Linhas e o campo Pontuação para a área Valores. Por predefinição, a área Valores será definida como «Soma» ou «Contar». Clique na seta suspensa do campo Pontuação na área Valores, selecione Resumo por Configurações de Campo e escolha Máx como função de resumo. Clique em OK.
3. Agora, a Tabela Dinâmica mostra a pontuação mais elevada para cada nome. Para destacar o melhor classificado globalmente, ordene a coluna «Máx. de Pontuação» por ordem decrescente — o nome no topo será o melhor (ou um dos empatados). Pode ainda aplicar filtros ou usar formatação condicional para uma ênfase visual impactante.
Se pretender apresentar apenas o(s) melhor(es) classificado(s), aplique Filtros de Valor: clique na seta suspensa dos Rótulos de Linha para Nomes, selecione Filtros de Valor > Igual e defina o valor como a pontuação mais elevada (que pode identificar ordenando temporariamente os valores ou verificando o número mais alto na coluna Máx. de Pontuação). Assim, foca o relatório exclusivamente no(s) nome(s) vencedor(es).
As Tabelas Dinâmicas são uma ferramenta poderosa para exploração: pode atualizar, expandir ou filtrar os seus dados com facilidade, e a Tabela Dinâmica recalcula automaticamente os resultados sempre que for atualizada. Contudo, se o seu conjunto de dados mudar frequentemente, lembre-se sempre de clicar com o botão direito na sua Tabela Dinâmica e escolher Atualizar após adicionar novos dados.
As Tabelas Dinâmicas podem exigir uma configuração inicial, mas oferecem relatórios flexíveis e comparações entre grupos — como por departamento ou equipa — desde que os seus dados incluam categorias adicionais.
Se encontrar problemas ao resumir ou ordenar, verifique se os seus dados não contêm células vazias e se os nomes das condições estão escritos de forma consistente. Ao utilizar listas extensas, uma atenção cuidadosa ao intervalo de origem garante que a Tabela Dinâmica inclui todos os dados relevantes.

Desbloqueie a Magia do Excel com KUTOOLS AI
- Execução Inteligente: Realize operações em células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
- fórmulas personalizadas: Crie fórmulas personalizadas para simplificar os seus fluxos de trabalho.
- Programação VBA: Escreva e implemente código VBA com facilidade.
- Interpretação de Fórmulas: Compreenda facilmente fórmulas complexas.
- Tradução de Texto: Elimine barreiras linguísticas nas suas folhas de cálculo.
As Melhores Ferramentas de Produtividade para o Office
Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...
Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil
- Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
- Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!
Todos os suplementos Kutools — num único instalador.
Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.
- Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Um instalador, uma licença— configuração em minutos (pronto para MSI)
- Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
- Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
- Melhor relação qualidade-preço— poupe face à compra individual dos suplementos