D'où la nécessité de vérifier ce que renvoie la fonction Split().
D'où la nécessité de vérifier ce que renvoie la fonction Split().
Quid de tester au préalable si la chaîne contient les séparateurs désirés ?
De plus, la fonction Split renvoie un tableau qui peut être illegal, on peut s'en rendre compte en testant la borne supérieur du tableau, si elle est négative, il y a eut un problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 If(InStr(enregistrement, ";") > 0) Then '// Suite du code End If
Illustration:
Ce n'est qu'une fois que tu auras testé la validité des données que tu pourras les manipuler sereinement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Dim Test As String Dim Data As Variant Test = "Test;Test" Data = Split(Test, ";") '// Data est un tableau de 2 elements, Ubound(Data) = 1 Debug.Print LBound(Data); UBound(Data) Test = "Test" Data = Split(Test, ";") '// Data est un tableau de 1 element, Ubound(Data) = 0 Debug.Print LBound(Data); UBound(Data) Test = vbNullString Data = Split(Test, ";") '// Data est un tableau illegal, Ubound(Data) = -1 Debug.Print LBound(Data); UBound(Data)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager