Renvoie une valeur avec if et vlookup

0

J'essaie de créer une formule qui puisse m'aider à tenir une liste.

J'ai des numéros de dessin et des révisions sur une seule feuille. Je dois aimer porter cela sur la feuille principale pour chaque numéro de dessin figurant sur la feuille principale.

Comme si la deuxième feuille est comme

Rev    Drawing number    
,      xx_B_200_50
1      xx_B_200_51

Je veux que la formule le retourne comme ceci sur la page principale

Rev    Drawing number
00     xx_B_200_50
01     xx_B_200_51

J'ai essayé ces derniers, mais je ne sais pas comment arriver au but !!

=VLOOKUP(G19;'secondsheet'!$I:$K;3;FALSE);

Merci!

Goorgoor
la source

Réponses:

1

Pour autant que je sache, vous voulez utiliser le Numéro de dessin rechercher une valeur correspondante sur une autre feuille.

Dans votre échantillon de données, une ligne comporte une virgule et l’autre le numéro 1. Vous semblez vouloir le renvoyer sous la forme 00 et 01

Je ne comprends pas très bien la logique de la virgule 00. Vous voudrez peut-être expliquer un peu plus.

Afin de renvoyer la colonne "Rev" en recherchant le numéro de dessin, vous ne pouvez pas utiliser Vlookup dans ce cas, car Vlookup peut uniquement renvoyer une valeur à la droite de la colonne où la valeur a été trouvée.

En supposant que "Rev" figure dans la colonne A et que "Numéro du dessin" figure dans la colonne B des deux feuilles, vous pouvez utiliser une combinaison Index / Correspondance pour renvoyer la valeur de la cellule.

=Index(Sheet2!$A:$A,Match(Sheet1!B1,Sheet2!$b:$b,0))

Cette formule renverra la valeur de la cellule de la colonne A de la feuille 2, la colonne B de la feuille 2 ayant la même valeur que B1 de la feuille 1.

Vous pouvez envelopper cette formule dans des formules de vérification d'erreur ou mettre en forme un nombre avec un zéro non significatif. Vous pouvez également l’envelopper dans une formule pour renvoyer un 00 si le résultat est une virgule.

De plus, comme vous semblez utiliser les paramètres européens, vous devez remplacer toutes les virgules dans la formule ci-dessus par des points-virgules. Comme ça:

=Index(Sheet2!$A:$A;Match(Sheet1!B1;Sheet2!$b:$b;0))

Si cela ne vous aide pas, postez plus d’informations, un exemple de fichier, une capture d’écran. Aidez-nous à vous aider.

Modifier après avoir posté le fichier exemple.

Vous essayez d'utiliser une formule avec plusieurs conditions, mais vous n'appliquez pas correctement le OU.

La fonction OR () ne peut pas être utilisée pour connecter deux instructions IF. IF () a la syntaxe IF(condition, do when true, do when false). Donc, ce que vous voulez couvrir avec "Ou" doit aller dans le do when false bit. Vous voudrez peut-être changer la formule en ceci:

=IF(INDEX(Sheet2!$A:$A,MATCH($B:$B,Sheet2!$B:$B,0))=".","00",IF(INDEX(Sheet2!$A:$A,MATCH($B:$B,Sheet2!$B:$B,0))="1","01","other"))

Vous pouvez remplacer le other bit dans la formule avec encore un autre SI imbriqué pour inclure une autre "ou" condition.

teylyn
la source
Merci. Je viens de créer un fichier Excel et d’utiliser votre code. Voici le lien. Je ne pouvais pas l'ajouter à mon post précédent. Comme vous pouvez le voir, je reçois une erreur lorsque je veux convertir "1" en "01" et "." à "00". J'ai besoin au moins de 00 à 05. s000.tinyupload.com/?file_id=48979453526771388742
Goorgoor
J'ai ajouté plus de détails à ma réponse
teylyn