
Fórmula genérica
=VLOOKUP(A1,CHOOSE((1,2),range2,range1),2,0)
Resumo
Para usar VLOOKUP para realizar uma pesquisa à esquerda, você pode usar a função CHOOSE para reordenar a tabela de pesquisa. No exemplo mostrado, a fórmula em F5 é:
=VLOOKUP(E5,CHOOSE((1,2),score,rating),2,0)
onde pontuação (C5: C9) e classificação (B5: B9) são intervalos nomeados.
Explicação
Uma das principais limitações da função VLOOKUP é que ela só pode pesquisar valores à direita. Em outras palavras, a coluna que contém os valores de pesquisa deve ficar à esquerda dos valores que você deseja recuperar com VLOOKUP. Não há como substituir esse comportamento, pois ele está conectado à função. Como resultado, com a configuração normal, não há como usar VLOOKUP para pesquisar uma classificação na coluna B com base em uma pontuação na coluna C.
Uma solução alternativa é reestruturar a própria tabela de pesquisa e mover a coluna de pesquisa para a esquerda dos valores de pesquisa. Essa é a abordagem usada neste exemplo, que usa a função CHOOSE reversa, classificação e pontuação assim:
CHOOSE((1,2),score,rating)
Normalmente, CHOOSE é usado com um único número de índice como o primeiro argumento e os argumentos restantes são os valores a serem escolhidos. No entanto, aqui fornecemos escolher uma constante de matriz para o número de índice contendo dois números: (1,2). Essencialmente, estamos pedindo para escolher o primeiro e o segundo valor.
Os valores são fornecidos como os dois intervalos nomeados no exemplo: pontuação e classificação. Observe, entretanto, que estamos fornecendo esses intervalos na ordem inversa. A função CHOOSE seleciona os dois intervalos na ordem fornecida e retorna o resultado como uma única matriz como esta:
(5,"Excellent";4,"Good";3,"Average";2,"Poor";1,"Terrible")
CHOOSE retorna esta matriz diretamente para VLOOKUP como o argumento da matriz da tabela. Em outras palavras, CHOOSE está entregando uma tabela de pesquisa como esta para VLOOKUP:
Usando o valor de pesquisa em E5, VLOOKUP localiza uma correspondência dentro da tabela recém-criada e retorna um resultado da segunda coluna.
Reordenando com a constante da matriz
No exemplo mostrado, estamos reordenando a tabela de pesquisa revertendo "classificação" e "pontuação" dentro da função escolhida. No entanto, poderíamos usar a constante de matriz para reordenar assim:
CHOOSE((2,1),rating,score)
O resultado é exatamente o mesmo.
Com INDEX e MATCH
Embora o exemplo acima funcione bem, não é o ideal. Por um lado, a maioria dos usuários comuns não entende como a fórmula funciona. Uma solução mais natural é INDEX e MATCH. Aqui está a fórmula equivalente:
=INDEX(rating,MATCH(E5,score,0))
Na verdade, este é um bom exemplo de como INDEX e MATCH são mais flexíveis do que VLOOKUP.