Faire une recherche dans un autre fichier
Résolu/Fermé
e_delcambre
Messages postés
16
Date d'inscription
dimanche 7 juin 2009
Statut
Membre
Dernière intervention
11 décembre 2009
-
21 sept. 2009 à 17:46
e_delcambre Messages postés 16 Date d'inscription dimanche 7 juin 2009 Statut Membre Dernière intervention 11 décembre 2009 - 24 sept. 2009 à 16:51
e_delcambre Messages postés 16 Date d'inscription dimanche 7 juin 2009 Statut Membre Dernière intervention 11 décembre 2009 - 24 sept. 2009 à 16:51
A voir également:
- Faire une recherche dans un autre fichier
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment faire un fichier pdf - Guide
- Fichier host - Guide
7 réponses
Sloubi76
Messages postés
1366
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
10 décembre 2016
135
21 sept. 2009 à 18:59
21 sept. 2009 à 18:59
Bonsoir,
LA fonction recherchev() semble appropriée pour ce genre problème.
Déposez un exemple de votre fichier sous : http://www.cijoint.fr/ et indiquez le lien généré. Ceci permettra de vous retourner le tableau et sa formule.
Attention à anonymiser les données sensibles.
@ +
LA fonction recherchev() semble appropriée pour ce genre problème.
Déposez un exemple de votre fichier sous : http://www.cijoint.fr/ et indiquez le lien généré. Ceci permettra de vous retourner le tableau et sa formule.
Attention à anonymiser les données sensibles.
@ +
Bonjour,
Sur la feuille 1 du classeur 1, en C1 : =RECHERCHEV(A1;[Classeur2.xls]Feuil1!$A$1:$C$10;3;FAUX)
Tirer la formule vers le bas.
Sur la feuille 1 du classeur 1, en C1 : =RECHERCHEV(A1;[Classeur2.xls]Feuil1!$A$1:$C$10;3;FAUX)
Tirer la formule vers le bas.
Bonjour,
Si vous recherchez la correspondance Nom et Prénom, je vous propose la formule suivante en C1:
=INDEX([Classeur2.xls]Feuil1!$C$1:$C$10;(SOMMEPROD((([Classeur2.xls]Feuil1!$A$1:$A$10=A1)*1)*(([Classeur1.xls]Feuil5!$B$1:$B$10=B1)*1)*LIGNE([Classeur2.xls]Feuil1!$A$1:$A$10))))
Tirer la formule vers le bas.
Note :
Classeur 1 / Feuil1 / nom en colonne A / prénom : col B et en C la formule pour récupérer l’adresse mail du classeur 2.
Classeur2 / Feuil1 / nom : A / prénom : B / adresse courriel : C
Si vous recherchez la correspondance Nom et Prénom, je vous propose la formule suivante en C1:
=INDEX([Classeur2.xls]Feuil1!$C$1:$C$10;(SOMMEPROD((([Classeur2.xls]Feuil1!$A$1:$A$10=A1)*1)*(([Classeur1.xls]Feuil5!$B$1:$B$10=B1)*1)*LIGNE([Classeur2.xls]Feuil1!$A$1:$A$10))))
Tirer la formule vers le bas.
Note :
Classeur 1 / Feuil1 / nom en colonne A / prénom : col B et en C la formule pour récupérer l’adresse mail du classeur 2.
Classeur2 / Feuil1 / nom : A / prénom : B / adresse courriel : C
Sloubi76
Messages postés
1366
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
10 décembre 2016
135
>
e_delcambre
22 sept. 2009 à 22:20
22 sept. 2009 à 22:20
Bonsoir,
En cas de pluralité de résultats la fonction ne retourne que la 1ère occurrence trouvée.
Ou alors il faut procéder à un filtre avancé pour n'avoir que des éléments unique.
@ +
En cas de pluralité de résultats la fonction ne retourne que la 1ère occurrence trouvée.
Ou alors il faut procéder à un filtre avancé pour n'avoir que des éléments unique.
@ +
e_delcambre
Messages postés
16
Date d'inscription
dimanche 7 juin 2009
Statut
Membre
Dernière intervention
11 décembre 2009
>
ponpon
23 sept. 2009 à 10:41
23 sept. 2009 à 10:41
Merci beaucoup. Alors finalement j'aimerais utiliser la première formule, plus simple (avec seulement le nom), mais pour l'instant je n'y arrive pas.
Donc la formule est :
=RECHERCHEV(B2;[Fichier2.xls]QUOTID!$B$1:$C$10;3;FAUX)
(j'ai adapté le nom du fichier, du feuillet, et la colonne du nom qui est en fait B)
- $B$1:$C$10 ça correspond à la plage ? Si le nom, dans le fichier 2, se trouve dans la colonne B entre la ligne 2 et la ligne 150, puis-je écrire $B$2:$B$150 ??
- où apparaît la référence aux emails ?
Quand j'ai mis ta formule comme je l'écris en haut, j'ai comme réponse #N/A
Et quand je modifie la plage (donc peut etre qu'il a trouvé le nom mais ne sait pas quoi faire), il me met #REF!
Je sens que j'approche du but! Merci!
Donc la formule est :
=RECHERCHEV(B2;[Fichier2.xls]QUOTID!$B$1:$C$10;3;FAUX)
(j'ai adapté le nom du fichier, du feuillet, et la colonne du nom qui est en fait B)
- $B$1:$C$10 ça correspond à la plage ? Si le nom, dans le fichier 2, se trouve dans la colonne B entre la ligne 2 et la ligne 150, puis-je écrire $B$2:$B$150 ??
- où apparaît la référence aux emails ?
Quand j'ai mis ta formule comme je l'écris en haut, j'ai comme réponse #N/A
Et quand je modifie la plage (donc peut etre qu'il a trouvé le nom mais ne sait pas quoi faire), il me met #REF!
Je sens que j'approche du but! Merci!
Bonjour,
Si le nom, dans le fichier 2, se trouve dans la colonne B , puis-je écrire $B$2:$B$150 ??
Presque ; il manque la colonne des adresses courriels soit colonne C --- > $B$2:$C$150.
Et le no_index_col doit être 2
La formule : =RECHERCHEV(B2;[Fichier2.xls]QUOTID!$B$1:$C$150;2;FAUX)
Si le nom, dans le fichier 2, se trouve dans la colonne B , puis-je écrire $B$2:$B$150 ??
Presque ; il manque la colonne des adresses courriels soit colonne C --- > $B$2:$C$150.
Et le no_index_col doit être 2
La formule : =RECHERCHEV(B2;[Fichier2.xls]QUOTID!$B$1:$C$150;2;FAUX)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
e_delcambre
Messages postés
16
Date d'inscription
dimanche 7 juin 2009
Statut
Membre
Dernière intervention
11 décembre 2009
23 sept. 2009 à 16:14
23 sept. 2009 à 16:14
Encore une fois : merci !
Il reste un petit problème... Donc ça marche pour mes 49 premières lignes. Dans les 20 premières je lui demande d'aller regarder dans le feuillet 1 du Fichier2 ; puis dans les 29 suivantes d'aller chercher dans le feuillet 2 du fichier 2 ; ensuite donc d'aller chercher dans le feuillet 3 du fichier2, et c'est là que ça coince...
Il ne me dit pas qu'il y a une erreur, simplement la formule reste sous la forme =RECH etc., elle ne se transforme pas en son résultat... est ce parce que je lui en demande trop ? parce que la formule que je mets n'est ni plus ni moins toujours la même, un peu modifiée :
=RECHERCHEV(B50;[Fichier2.xls]MENSUEL'!$B$1:$H$1100;7;FAUX)
As-tu une idée ?
Encore merci
Il reste un petit problème... Donc ça marche pour mes 49 premières lignes. Dans les 20 premières je lui demande d'aller regarder dans le feuillet 1 du Fichier2 ; puis dans les 29 suivantes d'aller chercher dans le feuillet 2 du fichier 2 ; ensuite donc d'aller chercher dans le feuillet 3 du fichier2, et c'est là que ça coince...
Il ne me dit pas qu'il y a une erreur, simplement la formule reste sous la forme =RECH etc., elle ne se transforme pas en son résultat... est ce parce que je lui en demande trop ? parce que la formule que je mets n'est ni plus ni moins toujours la même, un peu modifiée :
=RECHERCHEV(B50;[Fichier2.xls]MENSUEL'!$B$1:$H$1100;7;FAUX)
As-tu une idée ?
Encore merci
Sloubi76
Messages postés
1366
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
10 décembre 2016
135
23 sept. 2009 à 18:50
23 sept. 2009 à 18:50
Bonsoir,
Les feuillets sur lesquels portent la recherche sont ils dans le même classeur?
Dans l'affirmative, pourquoi ne pas les Nommer (Menu Insertion, Nom, Définir) afin d'alléger la formule et de simplifier les références.
Par exemple : sélectionner dans Fichier2.xls la zone B1:H1100 et la nommer Mensuel. Au niveau de la formule cela donne :
=RECHERCHEV(B50;MENSUEL!$B$1:$H$1100;7;FAUX)
Ensuite, vérifioer le format de la colonne recevant les résultats de la formule, il est possible que certaines cellules soient au format Texte, cas le plus fréquent, qui ne calcule pas la formule.
@ +
Les feuillets sur lesquels portent la recherche sont ils dans le même classeur?
Dans l'affirmative, pourquoi ne pas les Nommer (Menu Insertion, Nom, Définir) afin d'alléger la formule et de simplifier les références.
Par exemple : sélectionner dans Fichier2.xls la zone B1:H1100 et la nommer Mensuel. Au niveau de la formule cela donne :
=RECHERCHEV(B50;MENSUEL!$B$1:$H$1100;7;FAUX)
Ensuite, vérifioer le format de la colonne recevant les résultats de la formule, il est possible que certaines cellules soient au format Texte, cas le plus fréquent, qui ne calcule pas la formule.
@ +
e_delcambre
Messages postés
16
Date d'inscription
dimanche 7 juin 2009
Statut
Membre
Dernière intervention
11 décembre 2009
>
Sloubi76
Messages postés
1366
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
10 décembre 2016
24 sept. 2009 à 15:54
24 sept. 2009 à 15:54
Merci beaucoup, c'était bien une question de format de cellule.
Bonjour,
Se sera plus simple de mettre votre fichier sur https://www.cjoint.com/ ou http://cijoint.fr/ , suivre l’instruction et ne pas oublier de coller le lien.
Se sera plus simple de mettre votre fichier sur https://www.cjoint.com/ ou http://cijoint.fr/ , suivre l’instruction et ne pas oublier de coller le lien.
e_delcambre
Messages postés
16
Date d'inscription
dimanche 7 juin 2009
Statut
Membre
Dernière intervention
11 décembre 2009
24 sept. 2009 à 15:55
24 sept. 2009 à 15:55
Désolé, ces fichiers ne sont pas à moi et ont une certaine importance.
Mais ça y est, tout est résolu! Merci beaucoup!
Mais ça y est, tout est résolu! Merci beaucoup!
e_delcambre
Messages postés
16
Date d'inscription
dimanche 7 juin 2009
Statut
Membre
Dernière intervention
11 décembre 2009
24 sept. 2009 à 15:56
24 sept. 2009 à 15:56
Juste une dernière question, par simple curiosité ;)
Dans la formule, le FAUX qu'il y a à la fin, il répond à quelle question ?
Dans la formule, le FAUX qu'il y a à la fin, il répond à quelle question ?
Bonjour,
On trouve l’explication facilement en passant par l’aide sur cette fonction de la fenêtre insérer une fonction.
Syntaxe : RECHERCHEV(valeur_cherchée;table_matrice;no_index_col;valeur_proche)
Votre demande porte sur [valeur_proche] :
valeur_proche représente une valeur logique indiquant si vous souhaitez que la fonction RECHERCHEV recherche une valeur exacte ou voisine de celle que vous avez spécifiée.
Si cet argument est VRAI ou omis, une donnée exacte ou proche est renvoyée. Si aucune valeur exacte n'est trouvée, la valeur immédiatement inférieure à valeur_cherchée est renvoyée.
Les valeurs de la première colonne de table_matrice doivent être classées en ordre croissant ; sans cela, il se peut que RECHRCHEV ne renvoie pas la bonne valeur. Pour plus d'informations, consultez la rubrique Trier des données.
Si cet argument est FAUX, RECHERCHEH recherche exclusivement une correspondance exacte. Dans ce cas, il n'est pas indispensable que les valeurs de la première colonne de table_matrice soient triées. Si plusieurs valeurs de la première colonne de table_matrice correspondent à valeur_cherchée, c'est la première valeur trouvée qui est utilisée. Si aucune valeur ne correspond, la valeur d'erreur #N/A est renvoyée
On trouve l’explication facilement en passant par l’aide sur cette fonction de la fenêtre insérer une fonction.
Syntaxe : RECHERCHEV(valeur_cherchée;table_matrice;no_index_col;valeur_proche)
Votre demande porte sur [valeur_proche] :
valeur_proche représente une valeur logique indiquant si vous souhaitez que la fonction RECHERCHEV recherche une valeur exacte ou voisine de celle que vous avez spécifiée.
Si cet argument est VRAI ou omis, une donnée exacte ou proche est renvoyée. Si aucune valeur exacte n'est trouvée, la valeur immédiatement inférieure à valeur_cherchée est renvoyée.
Les valeurs de la première colonne de table_matrice doivent être classées en ordre croissant ; sans cela, il se peut que RECHRCHEV ne renvoie pas la bonne valeur. Pour plus d'informations, consultez la rubrique Trier des données.
Si cet argument est FAUX, RECHERCHEH recherche exclusivement une correspondance exacte. Dans ce cas, il n'est pas indispensable que les valeurs de la première colonne de table_matrice soient triées. Si plusieurs valeurs de la première colonne de table_matrice correspondent à valeur_cherchée, c'est la première valeur trouvée qui est utilisée. Si aucune valeur ne correspond, la valeur d'erreur #N/A est renvoyée
e_delcambre
Messages postés
16
Date d'inscription
dimanche 7 juin 2009
Statut
Membre
Dernière intervention
11 décembre 2009
24 sept. 2009 à 16:51
24 sept. 2009 à 16:51
Merci beaucoup!