Excel VLOOKUP par seconde colonne en utilisant le nom de la table comme plage

En utilisant le tableau d'exemple ci-dessous, je peux utiliser la formule =VLOOKUP("ABC123456",Table1,3,FALSE) pour rechercher la valeur de la Demand , mais je souhaite pouvoir effectuer la recherche en utilisant le champ Cust Part sans avoir à Faites en sorte que la Cust Part la première colonne du tableau. Making Cust Part la première colonne n'est pas une solution acceptable, car j'ai également besoin d'effectuer des recherches en utilisant le champ Part , et je ne veux pas utiliser de gammes codées (par exemple, $B$2:$C$4 ) principalement en tant que question De préférence, mais aussi parce que l'utilisation de noms de tableaux et de champs rend la formule plus facile à lire. Est-ce qu'il y a un moyen de faire ça?

Entrez la description de l'image ici

3 Solutions collect form web for “Excel VLOOKUP par seconde colonne en utilisant le nom de la table comme plage”

Il est possible d'utiliser OFFSET pour renvoyer la gamme Table1 mais 1 colonne, p.ex.

=VLOOKUP("AZ12345",OFFSET(Table1,0,1),2,FALSE)

Cela recherchera AZ12345 dans la colonne CustPart et renvoie la valeur à partir de la colonne suivante

Vous pouvez combiner INDEX et MATCH pour obtenir le même résultat de VLOOKUP sans que la comparaison soit restreinte à la première colonne. Bien que ce soit un peu plus complexe.

 =INDEX(Table1[Demand],MATCH("AZ12345",Table1[Cust Part],0)) 

Fondamentalement, vous utilisez MATCH pour trouver le numéro de ligne, et INDEX pour obtenir la valeur.

Remarque: Contrairement à VLOOKUP , si le résultat est une cellule vide, INDEX renverra 0 au lieu d'une chaîne vierge.

Que diriez-vous de quelque chose comme:

 =VLOOKUP("ABC123456";Table1[[Cust Part]:[Demand]];COLUMNS(Table1[[Cust Part]:[Demand]]);FALSE) 

Je préfère cela pour que vous puissiez voir ce que vous faites, même dans des tables plus complexes, plus si la structure de la table change, la formule fonctionnera toujours, tant que la colonne Cust Part se trouve devant la colonne Demand.

Soyons le génie de l'ordinateur et du réseau.