Bonjour,

Je cherche a creer un Fonction sous VBA-Excel me permettant de recuperer dans Excel des donnees stockees sous Access.

La Table Access utilisee est DATA et je cherche a extraire la somme des donnees figurant dans la colonne AMOUNT avec pour filtre '= variable a' dans la colonne CRITERE.

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
Public Function AccesstoExcel(a As String)
 
   Dim Db As Database
   Dim Rs As DAO.Recordset
   Dim Path As String 
 
   Path = "M:\ACCESS\BASE DE DONNEES\Basededonnees.mdb"
 
   Set Db = Workspaces(0).OpenDatabase(Path, ReadOnly:=True)
 
   Set Rs = _
   Db.OpenRecordset("SELECT sum([Data].AMOUNT) as Sum " & _
                     "FROM [Data]" & _
                     "WHERE ([Data].CRITERE=""" & a & """)")
 
   Sheets("Sheet1").Cells(1, 1).CopyFromRecordset Rs
 
   Set AccesstoExcel = Sheets("Sheet1").Range("A1").Value
 
   Rs.Close
   Db.Close
 
   Set Rs = Nothing
 
End Function
Ce code ne fonctionne pas, j'ai cree le meme sous forme de procedure qui lui fonctionne...

Quelqu'un pourrait-il m'expliquer ce qui ne va pas, je debute en VBA!

Merci d'avance,

Dave