Je travaille sur un grand nombre de données et j'ai besoin de récupérer des données en fonction de la valeur d'une cellule et d'une date. Je me rends compte que ma tâche peut être effectuée par une macro mais je veux plutôt une formule simple.
Problema : J'ai deux fichiers Excel, disons File1 et File2. Le premier ressemble à quelque chose comme ceci : Les dates sont en MM/DD/YYYY
format.
A B C
-----------------------------------
Val1 myDate Result
-----------------------------------
AJSKD 12/12/1991
AJSKD 12/12/1992
AJSKD 11/10/1992
ASHDI 01/10/1992
Et le deuxième fichier contient :
A B C D
-----------------------------------------------------
Val2 data beginDate endDate
-----------------------------------------------------
AJSKD 21ASD 12/10/1992 12/31/1992
AJSKD 23AIO 10/10/1992 11/31/1992
ADSUI 21389 12/01/1993 02/21/1994
MKASI AS123 01/12/1994 04/01/1994
ASHDI 34AS1 01/11/1992 01/31/1992
Maintenant ce que je veux c'est, je veux un filtre sur AJSKD
dans le fichier 2, quelque chose comme ça : =IF(File1$A2=File2$A:A)
et quand c'est vrai, je veux un autre critère : =IF(AND(mydate>=beginDate,myDate<=endDate)
et lorsque les deux conditions sont vraies, je veux copier les données dans la cellule de résultat.
Considérons un exemple : Je veux remplir la colonne de résultat de A3. Je filtre donc les enregistrements dans File2
sur la base de la valeur AJSKD
. En filtrant, j'obtiens :
A B C D
-----------------------------------------------------
Val2 data beginDate endDate
-----------------------------------------------------
AJSKD 21ASD 12/10/1992 12/31/1992
AJSKD 23AIO 10/10/1992 11/31/1992
Mais comme myDate
associés à AJSKD
dans le fichier 1 est 12/12/1992
. Cette date se situe entre 12/10/1992
y 12/31/1992
Je veux les données 21ASD
y no 23AIO
.
Le résultat devrait donc être le suivant :
A B C
-----------------------------------
Val1 myDate Result
-----------------------------------
AJSKD 12/12/1991 FALSE
AJSKD 12/12/1992 21ASD
AJSKD 11/10/1992 23AIO
ASHDI 01/10/1992 FALSE
Comme j'ai un million d'enregistrements, je ne peux pas filtrer manuellement et rechercher les données. J'essayais donc de trouver la formule qui fonctionnerait dessus. La deuxième partie fonctionne bien, c'est-à-dire la recherche par date. Mais je suis incapable de construire la formule pour la première partie. Quelqu'un peut-il m'indiquer la bonne direction ?
Merci d'avance.