Bonjour tout le monde,

Je veux extraire des données d'une table access à partir d'une requete et mettre le contenu de ces données dans excel.

Le soucis se situe au niveau de "Set rs5 = db2.OpenRecordset(strSQL2, dbOpenSnapshot)" mais je ne comprend vraiment pas ce qui cloche dans cette ligne. Ma requete à l'air bonne mais ca pourrait venir de là aussi.

Ou pensez vous que je me suis trompé dans mon code ?

merci et à bientot.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Private Sub Worksheet_Activate()
 
Dim ws As Workspace
Dim i As Integer, j As Integer, k As Integer
Dim Binomes(1 To 5) As String
Dim db2 As Database
Dim rs5 As Recordset
Dim strSQL As String
Dim strSQL2 As String
 
Set ws = DBEngine.Workspaces(0)
Set db2 = ws.OpenDatabase("C:\Documents and Settings\GCAMPS\Bureau\bd1.mdb")
 
strSQL = "Select Mois,Binome,MtCdes,MtObjectifs from dbo_CDG_tAnalysePerformanceGlobal"
 
Binomes(1) = "AGAI/LFIT"
Binomes(2) = "KAVE/JDEM"
Binomes(3) = "SFAE/DHAR"
Binomes(4) = "VBOR/DKUL"
Binomes(5) = "VGER/SLAR"
 
For k = 1 To 7
    strSQL2 = strSQL + " where Mois='0" + CStr(k) + "'"
 
    Set rs5 = db2.OpenRecordset(strSQL2, dbOpenSnapshot)
 
    For i = 1 To 5
 
        While (rs5.Fields("Binome").Value <> Binomes(i))
            rs5.MoveNext
        Wend
 
        Excel.Cells(i + 3, 2) = rs5.Fields("MtCdes").Value
        Excel.Cells(i + 3, 3) = rs5.Fields("MtObjectif").Value
 
    Next i
Next k
 
End Sub