Problema com o LOOKUP no excel

4

No momento, estou encontrando um problema com a função LOOKUP no excel

às vezes, ele encontra os dados certos e às vezes não.

Eu fiz um exemplo de imagem abaixo, os dois exemplos no topo dão os resultados errados, enquanto os dois na parte inferior dão os resultados certos.

A minha sintaxe ou uso de LOOKUP está incorreto? Como devo corrigi-lo para ter o resultado esperado?

aquiestáatabelacsvdosdados(meucomputadoralemãousaseparadores';'tambémemfórmulasquevocêpodeterqueeditar)

;"LOOKUP(C2;D2:D4;A2:A4)";;;;;
D4;"=LOOKUP(C2;D2:D4;A2:A4)";3400;3400;;;
CI;;;2390;;;
F5;;;900;;;
;"LOOKUP(C6;D6:D11;A6:A11)";;;;;
D4;"=LOOKUP(C6;D6:D11;A6:A11)";3600;900;;;
F4;;;3600;;;
CI;;;2390;;;
D4;;;900;;;
B4;;;2250;;;
D4;;;900;;;
;;;;;;
;;;;;;
;"LOOKUP(C15;D15:D17;A15:A17)";;;;;
D4;"=LOOKUP(C15;D15:D17;A15:A17)";3600;900;;;
F4;;;3600;;;
CI;;;2390;;;
;;;;;;
;"LOOKUP(C20;D20:D27;A20:A27)";;;;;
D4;"=LOOKUP(C20;D20:D27;A20:A27)";3600;900;;;
F4;;;3600;;;
F6;;;3650;;;
F5;;;3700;;;
CI;;;2390;;;
D4;;;900;;;
B4;;;2250;;;
D4;;;900;;;
    
por Jonathan 17.11.2017 / 12:28

5 respostas

7

A razão pela qual seu LOOKUP falhou é porque os valores no lookup_vector devem ser colocados em ordem crescente :

..., -2, -1, 0, 1, 2, ..., A-Z, FALSO, VERDADEIRO;

caso contrário, LOOKUP pode não retornar o valor correto

Veja o link para mais informações:

link

    
por 17.11.2017 / 13:22
8

Se eu entendi o que você está tentando fazer, sugiro usar INDEX e MATCH :

Veja meu exemplo que você pode usar em seu primeiro exemplo:

=INDEX(A2:A4,MATCH(C2,D2:D4,0),1)

Você também pode usar OFFSET , que é frequentemente ignorado:

=OFFSET(A2,MATCH(C2,D2:D4,0)-1,0)
    
por 17.11.2017 / 12:37
2

@Jonathan, gostaria de sugerir a DOIS Fórmula.

A Fmula 1 , = LOOKUP (5,1 / (D317: D319 = C317), A317: A319)

A Fórmula 2 é , = LOOKUP ($ C $ 317, D317: D $ 339, A317: A $ 339)

NB: O intervalo de dados é de A317 a D317 para a fórmula 1.

NB: O intervalo de dados é de A317 a D339 para a fórmula 2.

Para a primeira fórmula.

Valor de pesquisa no C317

O intervalo de pesquisa é de D317 a D319.

O intervalo de vetores de resultados é de A317 a A319.

NB: você precisa escrever a fórmula para cada intervalo de dados.

Nota também para a Fórmula 1, em vez de 5 deve ser usado qualquer valor que seja maior que 1. Uso de 5/1 para encontrar True & Falso.

Outras precauções é o intervalo de dados que deve ser classificado em ordem crescente.

Além disso, para a Fórmula 2, usei o Intervalo de dados inteiro apenas por causa das linhas em branco.

Espero que isso ajude você, eu postei a solução depois de ter sido testado por mim. Eu posso fazer upload da captura de tela se & quando você precisar.

    
por 17.11.2017 / 13:44
2

Do site de suporte do Office :

Important: The values in lookup_vector must be placed in ascending order: ..., -2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE; otherwise, LOOKUP might not return the correct value. Uppercase and lowercase text are equivalent.

Isso fica claro na função VLOOKUP , que substitui oficialmente o LOOKUP, onde há um último parâmetro que escolhe entre mimetizar o comportamento do LOOKUP (dados ordenados requeridos) ou procura dados indiferenciados.

    
por 17.11.2017 / 20:02
1

Descobri que, se eu reorganizar a tabela, mesmo que tudo pareça estar em ordem, o LOOKUP retornará a resposta correta.

    
por 17.11.2017 / 16:12