Em uma planilha do Calc ou Excel eu tenho uma coluna com vários nomes. Cada nome pode ocorrer uma ou várias vezes.
Cada nome tem uma 'primeira ocorrência', ou seja, a primeira linha em que aparece.
Estou procurando uma expressão ou fórmula para encontrar o nome com a primeira ocorrência mais recente .
Um exemplo para esclarecer:
Nome | |
---|---|
1 | Alice |
2 | Charlie |
3 | Prumo |
4 | Véspera |
5 | Charlie |
6 | Davi |
7 | Prumo |
8 | Alice |
9 | Davi |
10 | Charlie |
11 | Véspera |
David
primeira ocorrência é a linha 6, todos os outros nomes aparecem mais cedo (e também mais abaixo, mas estou interessado apenas na primeira ocorrência). Então, neste caso, o nome que eu quero é David
.
Eu provavelmente posso pensar em uma solução muito projetada com colunas sobressalentes e mecanismos de classificação, mas sinto que provavelmente há uma maneira mais fácil de fazer isso.
Para o LibreOffice, insira o seguinte como uma fórmula de matriz .
Para evitar fórmulas de matriz, use SUMPRODUCT.
Para Excel, basta usar:
Ele não classifica automaticamente a lista, portanto, o último item de
UNIQUE()
também é a última "primeira instância de um novo nome" na lista. Em seguida, useXLOOKUP()
para procuraranything
procurando"*"
(precisa dos caracteres de aspas duplas) com "2" para o 5º parâmetro, para que ele saiba que é um curinga e "-1" para o último parâmetro, para que ele olhe do final para encontrar o último tal nome faz o truque.A chave para tudo isso é
UNIQUE()
gerar a lista e NÃO classificá-la. Muito agravante (geralmente) não. Mas para o seu caso aqui, isso é uma coisa boa.