Excel VBA / Access / Variables d'interrogation

Christian22

XLDnaute Junior
Bonjour,

j'ai des données temporelles dans une base Access.

J'interroge la base par un programme VBA Excel. et cela marche.

Le problème, c'est que j'aimerais que mon programme VBA n'extrait que les données situées entre deux dates rensignées sur ma feuielle excel. Et là je n'arrive pas à faire en sorte que ces variables soient prises en considération dans la requète SQL.

Merci de votre aide.

Voici le code, mais j'aimerais trouver un moyen d'utiliser les dates StartDate et EndDate
Sub LectureAccess()
Dim rs As ADODB.Recordset
Set cnn = New ADODB.Connection
cnn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=E_donnees.mdb"
StartDate = Cells(1, 2)
EndDate = Cells(2, 2)
Set rs = cnn.Execute("SELECT * FROM Stoxx WHERE (((Stoxx.date)>#1/01/2001# And (Stoxx.date)<#1/18/2001#))ORDER BY date")
Range("A4").CopyFromRecordset rs
rs.Close
cnn.Close
Set rs = Nothing
Set cnn = Nothing
End Sub
 

SergiO

XLDnaute Accro
Re : Excel VBA / Access / Variables d'interrogation

Bonjour Christian,

As-tu essayé ceci:

Code:
Set rs = cnn.Execute("SELECT * FROM Stoxx WHERE (((Stoxx.date)>#" & StartDate &  "# And (Stoxx.date)<#" & EndDate & "#))ORDER BY date")

@+
 
C

Compte Supprimé 979

Guest
Re : Excel VBA / Access / Variables d'interrogation

Salut Christian22,

As-tu essayé :
Code:
Sub LectureAccess()
  Dim rs As ADODB.Recordset
  Set cnn = New ADODB.Connection
  cnn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=E_donnees.mdb"
  StartDate = Format(Cells(1, 2), "mm/dd/yyyy")
  EndDate = Format(Cells(2, 2), "mm/dd/yyyy")
  VCmd = "(((Stoxx.date)>#" & StartDate & "# And (Stoxx.date)<#" & EndDate & "#))"
  Set rs = cnn.Execute("SELECT * FROM Stoxx WHERE " & VCmd & " ORDER BY date")
  Range("A4").CopyFromRecordset rs
  rs.Close
  cnn.Close
  Set rs = Nothing
  Set cnn = Nothing
End Sub
J'ai mis les la condition WHERE dans une variable, pour éventuellement tester si les critères sont bons ;)

A+

Edit : Oups, salut SergiO
 

Statistiques des forums

Discussions
314 626
Messages
2 111 294
Membres
111 093
dernier inscrit
Yvounet