waspy59
Messages postés189Date d'inscriptionmercredi 24 novembre 2004StatutMembreDernière intervention15 mai 2013
-
3 déc. 2004 à 01:58
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 2019
-
3 déc. 2004 à 02:55
bonjour, eh oui c encore moi et toujours avec un probleme de manipulation de chaine.
voila g une variable s1 contenant une chaine de caractere hexa de taille variable.
j'analyse cette chaine caractere hexa par caractere hexa ( avec while et mid$).... jusque a pas de probleme.
mais quand j'arrive a un carctere particulier (par exemple "00"), je voudrait que si le carctere suivant est different de "00" alors:
-recuperer le debut de la chaine jusqu'au caractere "00" et le mettre dans un tableau t.
- recuperer la fin de la chaine a partir du carctere "00" est l'enregistrer dans s1.
par exemple:
s1= "65458751000025452523"
I
I
ANALYSE
I
t(1) contient "654587510000"
s1 contienne "25452523"
voila j'espere avoir été clair,
a l'avance merci de vos reponses
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 201934 3 déc. 2004 à 02:55
s'il y a d'autres séries de zéros je les traite aussi en les mettant dans la table.
Dim s1 As String
Dim T() As String
Dim n As Integer
Dim i As Integer
Dim j As Integer
Dim x As Integer
Dim z As Integer
s1 = "6545875100002545252300012345"
z = 1
For i = 1 To Len(s1)
x = InStr(i, s1, "00")
If x > 0 Then
For j = x + 2 To Len(s1)
If Mid$(s1, j, 1) <> "0" Then Exit For
Next
If (j - z) > 0 Then
n = n + 1: ReDim T(n)
T(n) = Mid$(s1, z, j - z)
MsgBox T(n)
End If
z = j
i = j - 1
End If
Next
s1 = Mid$(s1, z, i - z)