EXCEL vlookup para copiar apenas a segunda instância da folha 2 para a folha 1

1

Eu tenho uma lista de códigos de clientes e e-mails em Folha1 (AC EMAIL), com o código do cliente listado na coluna A e o e-mail na coluna B.

Euuseiovlookupparacopiaroe-maildoclienteparaumaFolha2(ACADDRESS)contendoocódigodoclienteeseuendereçopostal.

euusei:=VLOOKUP(A3,'ACEMAIL'!$A$1:$B$25989,2,FALSE)

No entanto, alguns clientes aparecem em Folha1 2 ou 3 vezes, pois têm vários e-mails listados.

Eu quero extrair apenas o segundo e terceiro e-mail para Folha2 em outra coluna de e-mail.

A fórmula que usei apenas copiou o primeiro e-mail listado, estou tendo problemas para obter a fórmula correta para mostrar quando um segundo e-mail é fornecido.

Isso é o que eu quero fazer, na linha de código de cliente único, uma coluna mostrando o primeiro e-mail e um segundo ou terceiro coluna mostrando se outro email é fornecido.

Isso provou ser menos direto do que eu esperava. Aprecie qualquer ajuda.

    
por Elsa Mc 14.10.2016 / 13:35

2 respostas

1

VLOOKUP() não suporta a recuperação da segunda ou terceira correspondência (ou qualquer outra que não a primeira). É suposto encontrar a primeira correspondência que preenche os critérios de pesquisa .

Sua pergunta não diz exatamente que você sempre quer a segunda, ou sempre a terceira - ou sempre a correspondência última .
Supondo que você sempre queira a correspondência última , uma maneira seria classificar a matriz de acordo. Quaisquer que sejam os dados, a entrada desejada na posição last pode ser usada para classificá-la na posição primeiro (subdividindo a coluna na outra direção). Se a sequência atual é apenas histórico de entrar, você poderia adicionar uma coluna 'Active' e colocar um 'X' lá (e depois ordenar decrescente), etc .; ou adicione uma coluna com data de validade ou algo parecido.
Alternativamente, você pode identificar e descartar todas as duplicatas, mantendo apenas as entradas 'last' = 'desejado'; dependendo se você quiser manter os outros de qualquer maneira.

De qualquer forma, não existe uma solução simples e direta - as fórmulas do Excel não são uma linguagem de programação. Você sempre pode entrar no VB e codificá-lo lá, se quiser.

    
por 14.10.2016 / 14:38
0

Dado que "VLOOKUP () não suporta recuperar a segunda ou terceira (ou qualquer outra que não a primeira), é suposto encontrar a primeira correspondência que preenche os critérios de pesquisa." -

você precisa tornar a pesquisa única. Se você fizer uma coluna para sequência que seja incrementada para duplas e recomeças para novas - por exemplo, se (c2 = c3, + b2 + 1,1) e, em seguida, fizer uma coluna de chave que inclua a sequência - + c3 & b3, você poderá fazer sua pesquisa na sequência desejada.

Ed leva 2 matemática

    
por 29.07.2018 / 16:37