Salut!
J'ai déja posté un message à propos de MoveNext, et cette fois-ci c'est encore lui qui me pose problème mais pour une autre raison. Mon recordSet ne parcours pas tout les enregistrements de ma table car au 2 ième enregistrement, ça plante.
J'ai l'erreur: "Un état E_FAIL a été renvoyé par le fournisseur de données ou par un autre service"
L'erreur vient de MoveNext.
Et j'ai testé que lors du premier passage dans ma boucle While, moveNext a fonctionné, il ne plante qu'au deuxième passage. (J'ai une dizaine d'enregistrements pour cette table)
Je ne comprend vraiment pas pourquoi, merci de m'éclairer.
Et comme je suis débutante, mon code doit être un peu bordelique, si vous avez des conseils je suis preneuse...
Merci d'avance
Voici le code:
Dim conn As ADODB.Connection
Dim rs1 As ADODB.Recordset
Set conn = New ADODB.Connection
conn.CursorLocation = adUseClient
conn.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};" _
& "SERVER=localhost;" _
& "DATABASE=Stock;" _
& "UID=root;" _
& "PWD=;" _
& "OPTION=" & 1 + 2 + 8 + 32 + 2048 + 16384
Set rs1 = New ADODB.Recordset
Dim str As String
str = "SELECT * FROM Mat "
rs1.Open str, conn, adOpenStatic, adLockPessimistic
rs1.MoveFirst
While (rs1.EOF = False)
If (rs1("Designation") = MatSel) Then
Label_Ref.Caption = rs1("Reference")
End If
rs1.MoveNext ' <------le MoveNext qui plante au 2ième tour
Wend
conn.Close
