Programmation VBA
Helimeleck@3
Messages postés
10
Statut
Membre
-
Helimeleck@3 Messages postés 10 Statut Membre -
Helimeleck@3 Messages postés 10 Statut Membre -
3 réponses
-
Bonjour, n'aurais-tu pas plus vite fait de créer un tableau de correspondance Adresse - Ville - Pays - CP et ensuite d'utiliser la fonction RECHERCHEV() ?
-
- Et bien tu crées ton tableau de correspondance dans un coin de la feuille, ou sur une feuille à part.
Je vais partir du principe qu'il est sur la même feuille, des colonnes A (adresse) à D (CP) pour la suite.
Là où tu veux que les infos se renseignent automatiquement, tu tapes la formule :=RECHERCHEV(La case avec l'adresse;$A$1:$B$x;y;FAUX)
Où x est la dernière ligne du tableau de correspondance et y la colonne de ce tableau à renvoyer.
Par exemple, si tu veux renvoyer la ville, il faudra y = 2. y = 3 pour le pays, etc.
Remarque : ça implique qu'une adresse corresponde à une seule ville pour que ça marche. Et ça n'est pas forcément le cas, ça c'est seulement toi qui le saura.
Le même principe peut s'appliquer en ne faisant le remplissage automatique qu'à partir de la ville, ou avec un autre critère tel qu'une référence.
-
-
-
-
Deux possibilités : soit tu veux que ça change quand on y apporte une correction, dans ce cas il faudra utiliser une formule :
Cells(x,y).FormulaLocal = "=RECHERCHEV(...)"
Et dans ce cas, attention aux variables qu'il faut insérer dans la chaîne de caractères.
Autrement :Cells(x,y).Value = vlookup(...)
Vlookup étant l'équivalent de recherchev() en vba.
-


