Aqui eu tenho uma tabela, eloquentemente chamada Table4
.
Eu defini um intervalo nomeado com base na coluna ID de Table4
.
Aqui tenho alguns menus suspensos idênticos ao lado dos campos que usam a VLOOKUP
:
A lista suspensa é validada com list
base no intervalo nomeado acima (PatientIds). E aqui está o código para as fórmulas de pesquisa:
=VLOOKUP(C9,Table4[[#All],[ID]:[Full Name]],4)
Com os dados acima, tudo parece e funciona perfeitamente. Posso alterar os menus suspensos e o valor próximo a eles muda. Aqui está um exemplo:
NO ENTANTO, se eu tentar mudar Z1
para NA
, o que faz mais sentido para o usuário, o inferno desabou!
Aqui estão os resultados com alguns campos duplicados:
E se eu não fizer nada além de voltar NA
para Z1
:
Responder1
=VLOOKUP(C9,Table4[[#All],[ID]:[Full Name]],4)
Vlookup leva quatro argumentos
Vlookup(lookup_value, table_array, col_index_number, range_lookup)
O último argumento pode ser omitido e o padrão será 1 ou TRUE. Você omitiu o quarto argumento, então o padrão é TRUE. Isso significa que a pesquisa retornará o próximo item menor se uma correspondência exata não for encontrada.
Para que isso funcione corretamente, o table_array deve ser classificado de forma crescente na primeira coluna. Se não for esse o caso, os resultados serão desordenados e um resultado correcto será mais por acaso do que intencional.
Para obter mais informações sobre o Vlookup e uma discussão sobre o quarto parâmetro, consulteVlookup – por que preciso de VERDADEIRO ou FALSO?