Programmation VBA

Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je débute à peine avec VBA et je voudrais créer une macro dans laquelle j'ai 4 champs Adresse , ville , pays et CP de sorte que lorsque je saisie l'adresse j'ai automatiquement le nom de la ville et du Pays qui apparaissent dans leur champs .

Besoin d'aide s'il vous plait!

voici mon début








3 réponses

Arkana0 Messages postés 6365 Date d'inscription   Statut Modérateur Dernière intervention   182
 
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() ?
0
Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Comment tu t'y prends?
0
Arkana0 Messages postés 6365 Date d'inscription   Statut Modérateur Dernière intervention   182 > Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
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.
0
Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Ok merci j'essaye et je te redis.
0
Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
C'est bon sa marche merci, pour le tableau maintenant il faut faire un lien avec la macro.

0
Arkana0 Messages postés 6365 Date d'inscription   Statut Modérateur Dernière intervention   182
 
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.
0
Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   > Arkana0 Messages postés 6365 Date d'inscription   Statut Modérateur Dernière intervention  
 
OK sa marche merci, j'essaie et je te redis .
0
Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   > Helimeleck@3 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Arkana0, j'arrive pas à faire le lien!!!!!!!!!!!!!!
0