Dado que você tenha uma planilha com diversos valores repetidos, como encontrar a última ocorrência de um dado valor? Existem diversas formas de resolver isso, a mais simples é usando a função LOOKUP
(ou PROC
em português) do Excel.
Suponha que você tenha uma planilha com alguns dados, como itens de uma compra e o valor e queira encontrar o valor que pagou na última vez que comprou um determinado item:
Nesse exemplo, se eu procurar por “Caneta” a função deve retornar o valor “R$ 2,50”. A chamada da função fica assim:
=LOOKUP(2;1/(A2:A5=D2);B2:B5)
Resultado
Explicação
No segundo parametro usamos 1/(A2:A5=D2)
como vetor de procura
, onde (A2:A5=D2)
irá retornar um vetor com valores TRUE
/FALSE
para cada índice indicando se corresponde ou não ao valor procurado. Dividindo isso por 1, teremos um vetor com 1
s ou erro #DIV/0!
.
Ai que entra a mágica, o primeiro parâmetro da função é o valor buscado no vetor, como passamos o valor 2 e nosso vetor de procura
não tem nenhum, a função retornará o último número (o último 1) do vetor que corresponde ao índice da linha que procuramos no vetor de resultado
(B2:B5
).
19 respostas em “Encontrar a última ocorrência de um determinado valor no Excel”
Olá, tudo bem?
Agradeço muito pela explicação, nos ajudou muito.
Mas como faríamos se na tabela ter células vazias, testamos aqui ele retornou o zero, teria com colocar um comando como “>0”
Opa,
Tenho uma tabela de compras de produtos. Preciso retornar o valor da ultima compra. Por exemplo:
DATA_COMPRA PRODUTO VALOR
01/01/2021 LARANJA R$ 10,00
01/01/2021 UVA R$ 15,00
05/02/2021 LARANJA R$ 12,00
05/02/2021 UVA R$ 20,00
03/03/2021 LARANJA R$ 14,00
03/03/2021 UVA R$ 9,00
09/03/2021 PERA R$ 15,00
Em uma outra planilha, quando eu digitar “LARANJA” ele deve retornar pra mim o valor de 14,00, que é o ultima compra(considerando o campo data)
Opa Wemerson,
Desde que sua lista de produtos esteja ordenada por data, a fórmula do artigo funcionará como vc espera.
Abraços
[…] fiz dois posts ensinando como encontrar a última e a n-ésima ocorrência de um valor no Excel, agora trago uma variação desse última para […]
Boa tarde. Otimo tutorial, saberia me informar como faria para encontrar o penultima ocorrencia de um detarminado valor? Muito obrigado.
Boa tarde Mario. Fiz um post explicando como encontrar a penúltima ocorrência: https://www.cogumello.com/dicas/excel/encontrar-a-penultima-ocorrencia-de-um-determinado-valor-no-excel/ .
Ele é baseado em um outro post de encontrar a n-ésima ocorrencia. Espero que te ajude.
Abraços
Otimo, muito facil e simplificado!
Como seria para procurar sempre a penúltima ocorrência, ao envés da ultima? Obrigado!
Muito obrigado pela informação do seu post. Foi esclarecedor e muito útil.
Quênia e Damião, muito obrigado!
Tentei usar este artifício para identificar o último valor zero em uma coluna, porém sem sucesso. Como devo proceder?
Daria para usar na forma que está no post, só alterando a busca para ser pelas colunas invés de linhas:
=LOOKUP(2;1/(A2:G2=B4);A1:G1)
[…] fiz um post mostrando como encontrar a última ocorrência de um determinado valor no Excel, mas agora vou mostrar como é possível encontrar o número da linha da n-éssima ocorrência de […]
Boa tarde. Digamos que, em sua lista, caneta aparecesse 5 vezes em uma lista de 20 itens. Eu gostaria de uma fórmula que desse o número da linha da 3 ocorrência, por exemplo. Tem como fazer?
É possível sim, mas é preciso utilizar outra fórmula:
=SMALL(IF($D$2=$A$2:$A$20; ROW($A$2:$A$20)-ROW($A$1)+1); 3)
Essa é uma formula matricial, então para aplica-la é preciso apertar CONTROL+SHIFT+ENTER.
Farei um post para tentar explicar melhor como usar essa fórmula.
parabéns pela explicação, porém utilizei a sua explanação para calcular os números atrasados da mega sena e da lotomania.
=MÁXIMO($A:$A)-PROC(2;1/(K:K=1);$A:$A)
Onde o MÁXIMO($A:$A) é o número do último concurso da Mega Sena
Fiz com que a função Proc localiza-se o último número “1” da coluna específica k:k e me retorna-se o valor do concurso.
Para saber o atraso do número eu subtrai o valor do ultimo concurso.
Damião, a parte da explicação principalmente o último parágrafo não ficou claro, mas creio que isto tenha a ver com o que estou precisando. É possível usar o PROC para encontrar A LINHA do último valor procurado? Obrigado!
Use a fórmula CORRESP ao invés de PROC
MInd Blow
Parabéns, Damião.
Eu já estudo Excel há anos e nunca tinha visto essa solução. Muito inteligente.
Só cabe uma ressalva:
No Excel: como explicado
No Calc: não funciona (erro:504)
No Google Planilhas: ao terminar de digitar, apertar Ctrl+Alt+Enter, pois ele entende que é uma fórmula matricial.