Vba séparer chaines de caractère d'1 cellule

Fermé
benama34 - 24 oct. 2007 à 22:40
 Invitey - 19 avril 2017 à 15:42
Bonjour,
Sous Excel vba j'ai une cellule contenant plusieurs chaines de caractères séparées par un point virgule du style "ben ;rom;jean;zfzf"
le nombre de chaines de caractéres peut varier
il me faut extraire chaque chaine de caractère dans des cellules différentes
j'ai ce code qui marche seulement dans le cas ou il y a deux chaines de caractères.

Sub hh()
Dim CMM(20) As String

Sheets("test").Select

j = 1
i = 1

CMM(i) = Range("A1").Value

Do

ben = CMM(i)

CMM(i) = Left(ben, InStr(ben, ";"))
Sheets("test").Cells(j, 2).Value = CMM(i)

CMM(i + 1) = Right(ben, InStr(ben, ";"))
Sheets("test").Cells(j, 3).Value = CMM(i + 1)

i = i + 1
j = j + 1

Loop While InStr(CMM(i), ";") <> 0



End Sub
A voir également:

1 réponse

ShaBoo Messages postés 392 Date d'inscription mercredi 12 septembre 2007 Statut Membre Dernière intervention 5 septembre 2009 50
24 oct. 2007 à 23:53
Bonsoir,

Tu peux utiliser la fonction Split :

Sub test()
    Dim a As Variant
    a = Split("ben ;rom;jean;zfzf", ";" )
    MsgBox a(0)
    MsgBox a(1)
    MsgBox a(2)
    MsgBox a(3)
End Sub 
9
Merci pour la réponse qui me sert aussi!
0