Rechercher une valeur dans plusieurs plages et afficher son nom
Fermé
PBC
-
21 mai 2015 à 21:55
Excel-worker Messages postés 589 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 23 juillet 2015 - 26 mai 2015 à 14:43
Excel-worker Messages postés 589 Date d'inscription mardi 7 avril 2015 Statut Membre Dernière intervention 23 juillet 2015 - 26 mai 2015 à 14:43
A voir également:
- Rechercher une valeur dans plusieurs plages et afficher son nom
- Rechercher ou entrer l'adresse - Guide
- Rechercher et remplacer word - Guide
- Recherche de personne par nom et prénom - Forum Mail
- Trouver une adresse avec un nom de famille gratuit ✓ - Forum Mobile
3 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 713
21 mai 2015 à 22:40
21 mai 2015 à 22:40
Bonjour,
Dans ta feuille #2, tes listes de noms de fournisseurs comme le type de fournisseur sont-ils sur les mêmes colonnes sur tous les tableaux ?
Dans ta feuille #2, tes listes de noms de fournisseurs comme le type de fournisseur sont-ils sur les mêmes colonnes sur tous les tableaux ?
via55
Messages postés
14509
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
2 janvier 2025
2 739
22 mai 2015 à 00:01
22 mai 2015 à 00:01
Bonsoir,
Une possibilité avec une fonction personnalisée :
ALT+F11 pour ouvrir l' éditeur VBA puis Insertion puis Module
Copier et coller la macro dans la page blanche
Si ta feuille 2 porte un autre nom remplacer Feuil2 par ce nom dans toutes les lignes de la macro
Fermer l'éditeur
La fonction s'utilise comme n'importe quelle fonction Excel à partir de son nom, syntaxe =fournisseur(adresse dela cellule avec le nom)
exemple : en B1 mettre =fournisseur(A1)
Tu peux rajouter autant de colonnes et de lignes que tu veux dans la feuille 2, la macro fonctionnera puisqu'à chaque fois on recherche la dernière colonne remplie (Col) puis la dernière ligne remplie de chaque colonne (ligne)
Cdlmnt
Via
Une possibilité avec une fonction personnalisée :
Function fournisseur(plage As Range) nom = plage.Value Dim Col As Integer Dim ligne As Long Col = Sheets("Feuil2").Rows(1).Find("*", , , , xlByRows, xlPrevious).Column For y = 1 To Col ligne = Sheets("Feuil2").Columns(y).Find("*", , , , xlByColumns, xlPrevious).Row For x = 2 To ligne If Sheets("Feuil2").Cells(x, y) = nom Then t = Sheets("Feuil2").Cells(1, y) Next Next fournisseur = t End Function
ALT+F11 pour ouvrir l' éditeur VBA puis Insertion puis Module
Copier et coller la macro dans la page blanche
Si ta feuille 2 porte un autre nom remplacer Feuil2 par ce nom dans toutes les lignes de la macro
Fermer l'éditeur
La fonction s'utilise comme n'importe quelle fonction Excel à partir de son nom, syntaxe =fournisseur(adresse dela cellule avec le nom)
exemple : en B1 mettre =fournisseur(A1)
Tu peux rajouter autant de colonnes et de lignes que tu veux dans la feuille 2, la macro fonctionnera puisqu'à chaque fois on recherche la dernière colonne remplie (Col) puis la dernière ligne remplie de chaque colonne (ligne)
Cdlmnt
Via
Excel-worker
Messages postés
589
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
23 juillet 2015
58
22 mai 2015 à 09:12
22 mai 2015 à 09:12
Bonjour,
Exemple : https://www.cjoint.com/c/EEwji42iB2g
Cdlt
Exemple : https://www.cjoint.com/c/EEwji42iB2g
Cdlt
Excel-worker
Messages postés
589
Date d'inscription
mardi 7 avril 2015
Statut
Membre
Dernière intervention
23 juillet 2015
58
>
PBC
26 mai 2015 à 14:43
26 mai 2015 à 14:43
Re,
Je propose que vous nous fournissiez un fichier exemple avec ce que vous voulez en commentaire, à moins si vous avez déjà trouvé la réponse.
Vous pouvez mettre le fichier ici : www.cjoint.com et nous donner le lien proposé.
Cdlt
Je propose que vous nous fournissiez un fichier exemple avec ce que vous voulez en commentaire, à moins si vous avez déjà trouvé la réponse.
Vous pouvez mettre le fichier ici : www.cjoint.com et nous donner le lien proposé.
Cdlt
21 mai 2015 à 23:06