[Déplacé VB6 --> VBA] condition pour remplir une colonne avec VBA (urgent)

ABMP Messages postés 2 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 3 novembre 2009 - 2 nov. 2009 à 19:11
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 - 3 nov. 2009 à 11:35
Bonjour,

J'ai cherché avant mais je n'ai rien trouvé sur le forum.

je voudrais savoir comment poser une condition afin qu'un colonne prenne une valeur en fonction de la valeur d'une autre colonne sur la meme ligne. Il se pourrait que cela soit simple mais je suis débutante donc soyez pas choqué.

Exemple:
j'ai une liste des villes dans la colonne A
Paris
Toulouse
Lille
Lyon
Marseille ...

Je voudrais que la colonne B prenne la valeur
PAR si la colonne A est egal à Paris sur une meme ligne.
j'ai essayé plusieurs commande et la dernière est celle ci mais ne marche pas. J'espere que quelqu'un pourra m'aider.


Sub remplir_ville()
Dim i As Integer
For i = 2 To 1000
If Range("A2").Offset(i - 1, 0).Value = "PARIS" Then
Range("B2").Offset(i - 1, 0).Value = "PAR"
End If
If Range("A2").offset(i-1, 0).Value="Marseille"Then Range ("B2").Offset(i - 1, 0).Value = "MAR"
end if

Next

End Sub

Merci

5 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
2 nov. 2009 à 20:07
Salut
Supposons que les noms des villes en toute lettre se trouvent en A2 et suivant verticalement.
Supposons que les noms abrégés se trouvent à droite du nom de chaque ville.

Dans la feuille Excel, il te suffit d'utiliser la fonction RECHERCHEV :
=RECHERCHEV(E1;A2:B10;2;FAUX)
(résultat affiché dans E1)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
2 nov. 2009 à 20:13
Dans E1, ce n'est pas le résultat, mais la cellule dans laquelle tu saisis le nom en toute lettres, pardon.
Le résultat, lui, apparaitra dans la cellule dans laquelle tu placeras la fonction.
0
ABMP Messages postés 2 Date d'inscription lundi 2 novembre 2009 Statut Membre Dernière intervention 3 novembre 2009
3 nov. 2009 à 09:36
Bonjour Jack

et merci pour ta reponse. En fait le nom abregé de la ville n'est pas prerempli dans la colonne a droite. A priori j'ai juste la liste de nom des ville. J'ai créé les nom abregés. Et je voudrais les remplir automatiquement dans la colonne à droite pour chaque ville.

J'ai besoin de quelque chose qui tourne seul parce que je le fait plusieurs fois et la liste est longue.


Merci pour votre aide
0
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
3 nov. 2009 à 11:12
Salut,

pas besoin de VBA pour cela !!! C'est comme utiliser un char pour tuer un moustique !

en B2 tu ecris:

=Gauche(A$2;3)

puis tu copies la formule vers le bas à l'aide de la poignée de recopie

Aide excel:
Vous pouvez également copier des formules dans des cellules adjacentes à l'aide de la poignée de recopie (poignée de recopie : petit carré noir situé dans le coin inférieur droit de la sélection. Lorsque vous pointez sur la poignée de recopie, le pointeur se transforme en croix noire.) . Sélectionnez la cellule qui contient la formule, puis faites glisser la poignée de recopie sur la plage que vous souhaitez remplir.

A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
3 nov. 2009 à 11:35
re,

j'ajouterais que la poignée de recopie fait la même chose si on double-click dessus. En suite si tu veux un truc automatique il suffit de le fois tout tout en utilisant l'enregistreur de macro.

voila !
0
Rejoignez-nous