laurent92370
Messages postés70Date d'inscriptionmercredi 24 septembre 2003StatutMembreDernière intervention20 mars 2007
-
28 août 2005 à 06:03
laurent92370
Messages postés70Date d'inscriptionmercredi 24 septembre 2003StatutMembreDernière intervention20 mars 2007
-
28 août 2005 à 12:20
Bonjour,
Voici ma question : j'ai une chaine de caractères comme suit :
aa,bbb,cc,dddd
Cette chaine de caractère est stockée dans une variable.
Maintenant, cette variable doit être décomposée en 4 éléments stockés chacun dans une variable :
var1 doit contenir : aa
var2 doit contenur: bbb
var3 doit contenir : cc
var4 doit contenir : dddd
Je n'ai pas de soucis pour la var1 vu qu'elle aura toujours une longueur fixe. Par contre ça se corse pour les 3 autres car elles auront une longueur variable.
Je n'arrive pas à extraire les caractères. Je sais qu'il faut rechercher leur position et leur longueur en jouant avec la virgule (qui est mon séparateur de variable) mais c'est un peu trop complexe pour moi.
C'est pour cela que je fais de nouveau appel à vous. Pour info, c'est du VBA.
laurent92370
Messages postés70Date d'inscriptionmercredi 24 septembre 2003StatutMembreDernière intervention20 mars 20071 28 août 2005 à 11:46
Bonjour Daniel
Merci pour ce code. Je l'ai adapté à mon code, mais ça ne marche pas pour récupérer la derniere variable.
Les infos sont stockées dans un fichier txt dont les infos sont présentées comme suit :
toto,maison,albert
tata,elephant,monique
Le code est le suivant :
Close #1
Open ("c:\icschange.rep") For Input As #1
Do While Not EOF(1)
Line Input #1, lignelue
s = lignelue
j = 1
i = InStr(j, s, ",")
If i > 0 Then
var1 = Mid$(s, j, i - j)
MsgBox var1
j = i + 1
i = InStr(j, s, ",")
If i > 0 Then
var2 = Mid$(s, j, i - j)
MsgBox var2
j = i + 1
i = InStr(j, s, ",")
If i > 0 Then
var3 = Mid$(s, j, i - j)
MsgBox var3
j = i + 1
End If
End If
End If
Les 2premieres variables (toto, maison) sont bien affichées dans une msgbox mais pas la 3ème (albert) et le programme continue sur les autres lignes du fichiers sans affciher la 3ème variable.