Comment affecter une chaîne de caractères en plusieurs variables
Chistian B
Messages postés1Date d'inscriptionmardi 10 mai 2005StatutMembreDernière intervention 9 septembre 2005
-
9 sept. 2005 à 16:18
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 2006
-
9 sept. 2005 à 16:29
Bonjour,
Je cherche à affecter une chaine de caractères -dont le séparateur est dans ce cas la virgule- en plusieurs variables.
Par exemple :
9596,379,18,1,10,-11,14,-19,-16,1,42.44,176.47,46.80,190,0.43
en
Var1=9596
Var2=379
Var3=18
Var15=0.43
Merci
A voir également:
Comment affecter une chaîne de caractères en plusieurs variables
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 200628 9 sept. 2005 à 16:29
Le plus simple est de passer par un tableau et d'utiliser la fonction Split
Dim Var() As String
Dim Source As String
Source = "9596,379,18,1,10,-11,14,-19,-16,1,42.44,176.47,46.80,190,0.43"
Var = Split(Source, ",")
Si tu veux exploiter ensuite les valeur obtenu comme des valeurs numériques, il faudra que tu utilises la fonction CDBL() qui te convertit une chaine de caractère en double. Il faudra avant cela convertir les "." éventuel en virgule décimale, sinon CDbl() va planter. Je te propose donc ce code final :
Dim StrVar() As String
Dim DblVar() as Double
Dim Source As String
Dim i As Long
Source = "9596,379,18,1,10,-11,14,-19,-16,1,42.44,176.47,46.80,190,0.43"
StrVar = Split(Source, ",")
Redim DblVar(UBound(StrVar))
For i = 0 To UBound(StrVar)
DblVar(i) = CDbl(Replace$(StrVar(i), ".", ","))
Next
... Et tu utilises ensuite le tableau DblVar() pour obtenir tes valeurs