[VB6] erreur Out of range

Fermé
alain - 21 mars 2006 à 09:05
 alain - 21 mars 2006 à 09:18
Bonjour!

J'ai un petit probleme en VB, je commence seulement à apprendre ce langage, donc c'est peut etre une question tout bete. Mon souci c'est de remplacer les champs vide d'une BDD mysql par des données d'un CSV. Voilà une partie du code (qui fait l'erreur)

Dim val As String
Dim nb As Integer
val = ""
nb = rs.FieldCount '19
For i = 0 To nb - 1 Step 1 ' pour tous les champs de la bdd
             If rs.Fields(i).Value = "" Then ' on verifie si le champ est vide, si oui
                
                If (ptrCSV2(i) = "") Then 'on verifie si la colonne i du CSV est vide
                    MsgBox (ptrCSV2(i) & " et " & rs.Fields(i).Value & " vides!")
                Else ' sinon
                    val = val & rs.Fields(i).Name & "='" & ptrCSV2(i) & "'"
                End If
                                
            End If
            
            
Next i
        
MsgBox ("val = " & val)


C'est sur le test PtrCSV2(i) = "" qu'il me sort un out of range.
Y a t il moyen de corriger ce probleme? Y a t il un equivalent de la fonction isset() de PHP en VB? Car je pense que c'est parce que la variable n'existe pas (hors du tableau puisque out of range)

Merci de votre aide à tous ^^

Alain

1 réponse

Post inutile!
Juste changé le nb en Ubound(ptrCSV2) car la taille de ptrCSV2 etait inferieure au nombre de champs (nb)... dc out of range etait normal!!

dsl

++
0