2017-08-02 2 views
-2

J'ai actuellement une grande table de données en Excel que j'ai besoin de connecter à un fichier Excel séparé. Dans la colonne N j'ai la date et je veux utiliser cette date comme valeur qui me permet de connecter les deux fichiers. Dans la colonne A, j'ai un numéro de série. Je veux faire un Backwards RECHERCHEV qui ressemble dans la colonne N et me donne la valeur dans la colonne A. J'ai actuellement ce code:Retour vers VLOOKUP

=VLOOKUP($G$2,CHOOSE({2,1},'FILENAMESHEET1'!$A$2:$A$1048576,'FILENAMESHEET1'!$N$2:$N$687),2,0) 

Cela me fournit le premier numéro de série qui apparaît à cette date précise. Comment puis-je obtenir le 2ème, 3ème, Nième numéro de série qui apparaît à une date spécifique.

+0

regarder dans 'Index/Match'. Vlookup ne va pas de droite à gauche. – BruceWayne

+1

Est-ce deux questions? Comment faire un backlook backward et comment obtenir le 1er, 2ème, 3ème ... match? – JNevill

+0

Oui @JNevill désolé d'être peu clair – Maanit

Répondre

1

Pour répondre à votre première question, utilisez INDEX/MATCH:

=INDEX('FILENAMESHEET1'!$A:$A,MATCH($G$2,'FILENAMESHEET1'!$N:$N,0) 

Cela fera dans le premier trouvé.


Pour répondre à votre seconde, il faut être un peu plus créatif.

Cela fera la première, deuxième, troisième ...

Mettre cela dans la première cellule et copier/glisser vers le bas

=INDEX('FILENAMESHEET1'!$A:$A,AGGREGATE(15,6,ROW('FILENAMESHEET1'!$N$2:INDEX('FILENAMESHEET1'!$N:$N,MATCH(1E+99,'FILENAMESHEET1'!$N:$N)))/('FILENAMESHEET1'!$N$2:INDEX('FILENAMESHEET1'!$N:$N,MATCH(1E+99,'FILENAMESHEET1'!$N:$N))= $G$2),ROW(1:1))) 

Si vos données dans la colonne N est texte au lieu de chiffres, puis vous devrez changer les deux 1E+99 en "zzz".

Comme il est copié/tiré vers le bas, il retournera le prochain match et le prochain ...

+0

Économiseur de vie absolu. J'avais presque abandonné, tu es un dieu mon ami – Maanit