SEPARATION D'UNE CHAINE DE CARACTERE

Signaler
Messages postés
98
Date d'inscription
mercredi 22 novembre 2000
Statut
Membre
Dernière intervention
12 juillet 2005
-
Messages postés
35
Date d'inscription
vendredi 7 février 2003
Statut
Membre
Dernière intervention
20 février 2009
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7619-separation-d-une-chaine-de-caractere

Messages postés
35
Date d'inscription
vendredi 7 février 2003
Statut
Membre
Dernière intervention
20 février 2009

Slt,

De retour après de longues années d'absence, je me marre comme un *** devant mon code. Heureusement que les commentateurs étaient gentils ...

VDB Tristan
Messages postés
7
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
28 mars 2006

celle ci te décompose la trame séparée par des ; dans un tableau

Public Function DecodeF(strInput As String) As String()
' Decode la ligne de donnée séparée par des points virgule en tableau
Dim strDum(100) As String

Dim strDummy As String
Dim i, j As Integer
Dim iLgChaine As Integer
iLgChaine = Len(strInput)
i = 1
For j = 1 To iLgChaine
If Mid(strInput, j, 1) = ";" Then
strDum(i) = strDummy
strDummy = ""
i = i + 1
Else
strDummy = strDummy & Mid(strInput, j, 1)
End If
Next j
strDum(i) = strDummy
' Retour de la fonction
DecodeF = strDum
End Function
Messages postés
35
Date d'inscription
vendredi 7 février 2003
Statut
Membre
Dernière intervention
20 février 2009

je cherchai la fonction split mais ne la trouvait pas donc j'ai créé celle ci
Messages postés
921
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
23 septembre 2010

C'est vrai que ce n'est pas optimisé, mais avec un peu de bidouillage et de récursivité il serait possible d'en faire un substitut à la fonction Split.
Mais bon c'est vrai que dans les cas comme ça il vaut mieux utiliser Split.
Messages postés
98
Date d'inscription
mercredi 22 novembre 2000
Statut
Membre
Dernière intervention
12 juillet 2005

moué ms bon la fonction split ;)...

si tu veux garder cette méthode, mets $ a left$ et right$, declare i, ne recalcule pas les longueurs a chk itérations, utilise not plutot ke =false pour optimiser un peu.

@+ bonne prog