Bonjour,
j'essaye d'établir une connexion entre une base de donnée Mysql ainsi qu'une fiche excel. cependant j'ai essayé de développer quelque chose mais il y a une erreur que je n'arrive pas a résoudre :
Variable Objet ou variable de bloc With non définie
Je vous serais très reconnaissant de bien vouloir me débloquer.
j'essaye d'établir une connexion entre une base de donnée Mysql ainsi qu'une fiche excel. cependant j'ai essayé de développer quelque chose mais il y a une erreur que je n'arrive pas a résoudre :
Variable Objet ou variable de bloc With non définie
Code:
Public conn As ADODB.Connection
Public rsCard As ADODB.Recordset
Private Sub Worksheet_Activate()
Dim sh1 As Feuil3
Dim SQL As String
Dim c As Integer
On Error GoTo error_handler
conn.ConnectionString = "DRIVER={MySQL ODBC 5.1 Driver};SERVER=localhost; DATABASE=ldp;UID=root;PWD=mysql; OPTION=3"
conn.Open
Set sh1 = Excel.Worksheets(1)
Set conn = New ADODB.Connection
Set rsCard = New ADODB.Recordset
SQL = "select * from cartes"
c = 0
rsCard.CursorLocation = adUseServer
rsCard.Open SQL, conn
rsCard.MoveFirst
Do Until rsCard.BOF Or rsCard.EOF
sh1.Cells(c, 1).Value = rsCard.Fields(0)
sh1.Cells(c, 2).Value = rsCard.Fields(1)
sh1.Cells(c, 3).Value = rsCard.Fields(2)
sh1.Cells(c, 4).Value = rsCard.Fields(3)
sh1.Cells(c, 5).Value = rsCard.Fields(4)
sh1.Cells(c, 6).Value = rsCard.Fields(5)
sh1.Cells(c, 7).Value = rsCard.Fields(6)
sh1.Cells(c, 8).Value = rsCard.Fields(7)
sh1.Cells(c, 9).Value = rsCard.Fields(8)
sh1.Cells(c, 10).Value = rsCard.Fields(9)
sh1.Cells(c, 11).Value = rsCard.Fields(10)
sh1.Cells(c, 12).Value = rsCard.Fields(11)
sh1.Cells(c, 13).Value = rsCard.Fields(12)
sh1.Cells(c, 14).Value = rsCard.Fields(13)
sh1.Cells(c, 15).Value = rsCard.Fields(14)
sh1.Cells(c, 16).Value = rsCard.Fields(15)
sh1.Cells(c, 17).Value = rsCard.Fields(16)
sh1.Cells(c, 18).Value = rsCard.Fields(17)
sh1.Cells(c, 19).Value = rsCard.Fields(18)
sh1.Cells(c, 20).Value = rsCard.Fields(19)
sh1.Cells(c, 21).Value = rsCard.Fields(20)
sh1.Cells(c, 22).Value = rsCard.Fields(21)
sh1.Cells(c, 23).Value = rsCard.Fields(22)
sh1.Cells(c, 24).Value = rsCard.Fields(23)
rsCard.MoveNext
c = c + 1
If rsCard.EOF Then
rsCard.MoveFirst
Exit Sub
End If
Loop
error_handler:
MsgBox "Erreur : " & Err.Description, vbCritical
End Sub
Je vous serais très reconnaissant de bien vouloir me débloquer.