Bonjour à tous,
J'ai un problème avec un module VB sous excel.
Le but de ce module étant de récuper le résultat d'une requête ACCESS avec passage d'arguments. Il semble y avoir un problème lors de la connexion à la base de données. Malheureusement je ne comprend pas ce qu'il se passe. Lorsque je fais un débogage , il pointe sur la ligne
Set RQ = BaseSource.OpenRecordset(TexteSql, dbOpenDynaset)
Voici le code complet si ça peut aider quelqu'un.
Merci de m'aider
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 Sub trihotel() Dim BaseSource As Database Dim RQ As Recordset Dim CompA As Long Dim Cellule As Range Dim Datedebut As Date Dim Datefin As Date Dim TexteSql As String Columns("A:K").Select Selection.ClearContents Range("A3").Select Datedebut = InputBox("Entrez la date de début", , Default) Datefin = InputBox("Entrez la date de fin", , Default) Application.DisplayAlerts = False Set BaseSource = DBEngine.Workspaces(0).OpenDatabase("C:\Documents and Settings\SceInfo\Mes documents\Bases de Données ACCESS\Pierre TRraccard\pierretraccard.mdb") DoEvents TexteSql = "SELECT * FROM gf2 WHERE (Clng(DATE_CREATION)>=" & CLng(Datedebut) & ") And (Clng(DATE_CREATION) <=" & CLng(Datefin) & ")" Set RQ = BaseSource.OpenRecordset(TexteSql, dbOpenDynaset) Set Cellule = Range("A3") For CompA = 0 To RQ.Fields.Count - 1 Cellule.Offset(0, CompA).Value = RQ.Fields(CompA).Name Next CompA Range("A4").CopyFromRecordset RQ RQ.Close Set RQ = Nothing Application.DisplayAlerts = True End Sub
Partager