Esta fórmula deve funcionar. Se houver algum problema, tente usar intervalos nomeados.
=IFERROR(INDEX('Sheet2'!$B$2:$B$162,MATCH('Sheet1'!$D2,'Sheet2'!$A$2:$A$162,0)),"")
Eu bati um pouco de uma parede de tijolos no meu Excel. Abaixo está o exemplo e explicação.
Folha 1:
Column A | Column B | Column C | Column D
_ Name _ | _ Date ._ | _ Cost .._ | _ Code _
Folha 2:
Column A | Column B
_ Code _ | _ CodeDesc
O que eu gostaria de fazer na Coluna E da Folha 1 é testar o código na Coluna D contra a Coluna A na Folha 2.
Por exemplo: se Sheet1! D4 for igual a qualquer coisa no intervalo de Sheet2! A: A - diga A37, retorne B37 como o valor em Sheet1! E4.
Eu originalmente queria fazer uma função if para isso, mas sem sucesso. O VLookup não funciona, pois esta planilha não pode ser classificada pelos códigos.
Meu pensamento original: = SE (B4 = Folha2! A2: A162, Folha2! B2: B162,)
Eu sabia que não funcionaria, então, por favor, não aponte a idiotice dele. Foi exatamente onde minha cabeça foi a princípio e, aparentemente, tão perto do Natal, meu cérebro de trabalho tirou uma licença. E uma licença de sentido.
Esta fórmula deve funcionar. Se houver algum problema, tente usar intervalos nomeados.
=IFERROR(INDEX('Sheet2'!$B$2:$B$162,MATCH('Sheet1'!$D2,'Sheet2'!$A$2:$A$162,0)),"")
O VLOOKUP funcionará bem, desde que você defina o último parâmetro como FALSE.
Por exemplo, defina E4
para =VLOOKUP(D4, Sheet2!A:B, 2, FALSE)
.