[VBA]Faire correspondre chiffre avec mot
Résolu
minidu56
-
minidu56 -
minidu56 -
Bonjour à tous,
j'ai un une colonne excel (nombre de ligne inconnues) contenant des cellules du type :
1,5,6,9
ou ces chiffre equivalent a des mots spécifiques
1=mot1
5=mot5
...
j'aimerai que dans la colonne d'a coté sécrive (après l'execution de la macro) des chose du genre mot1,mot5,mot6,mot9
J'ai voulut utiliser la fonction split mais je n'y arrive pas vraiment
pouvez vous m'aider?
merci d'vance
j'ai un une colonne excel (nombre de ligne inconnues) contenant des cellules du type :
1,5,6,9
ou ces chiffre equivalent a des mots spécifiques
1=mot1
5=mot5
...
j'aimerai que dans la colonne d'a coté sécrive (après l'execution de la macro) des chose du genre mot1,mot5,mot6,mot9
J'ai voulut utiliser la fonction split mais je n'y arrive pas vraiment
pouvez vous m'aider?
merci d'vance
4 réponses
-
en fait j'ai trouver comment faire la correspondance a partir d'une chaine de carractère définie
Mais je ne sais pas récupérer la valeur de chauqe cellule pour la mettre en chaine de carractère.
Existe il un Moyen?
merci d'avance -
Bonjour,
Sub Test() Dim Lig As Long Dim Col As Integer Col = 1 'pour la colonne A For Lig = 1 To Range("65535").End(xlUp).Row If Cells(Lig, Col) <> "" Then Cells(Lig, Col + 1) = "Mot" & Cells(Lig, Col) End If Next Lig End Sub
A+ -
Mais je suppose que ce n'est pas le résultat que tu veux, en lisant entre les lignes je pense que ce n'est pas Split que tu dois employer mais Array
Sub Test2() Dim TB Dim Lig As Long Dim Col As Integer TB = Array(" ", "Voiture", "Auto", "Moto", "Vélo", "à Pieds", "Autocars") Col = 1 'pour la colonne A For Lig = 1 To Range("65535").End(xlUp).Row Cells(Lig, Col + 1) = TB(Val(Cells(Lig, Col))) Next Lig End Sub
-
Waouh merci
J'avais essayer de faire une truc beaucoup plus compliquer mais ça c'est meiux et plus rapide.
Merci encore
Merci a tous