Affichage données Requête Access

  • Initiateur de la discussion Jeff
  • Date de début
J

Jeff

Guest
Bonjour à tous,

J'utilise le code ci-dessous pour récupérer les données d'une table Access.

Le problème est qu'il ne retrouve aucun enregistrement alors que j'ai directement importé le code SQL d'Access et que sous Access j'ai bien mes enregistrements.

Ai-je oublié quelque chose?

Sub Query1()

Dim myDB As Database
Dim myFileName As String
Dim MyRS As Recordset

myFileName = 'O:\\Bo_base\\EFFORT TRACKING\\Effort_tracking.mdb'
Set myDB = DBEngine.OpenDatabase(myFileName)

w = Range('D12')
w = '''*' & w & '*'''

wSQL = 'SELECT T_Effort.Initiales, Sum(T_Effort.Durée) AS Total FROM T_Effort GROUP BY T_Effort.Initiales, T_Effort.Groupe_Tâche HAVING T_Effort.Groupe_Tâche=' & w & ';'


Set MyRS = myDB.OpenRecordset(wSQL, dbOpenDynaset)

Range('D15:E19').ClearContents


k = 15
Do While Not MyRS.EOF
MsgBox (k)
With Sheets('Reports')
Range('D' & k) = MyRS.Fields('Initiales')
Range('E' & k) = MyRS.Fields('SommeDeDurée')
k = k + 1
End With
MyRS.MoveNext
Loop


End Sub


Merci pour ceux qui auraient une piste...

Jeff.
 
M

MrExcel

Guest
Salut Jeff,

Attention, recopier directement une requête d'Access vers XL ne suffit pas ! En effet tu risque de rencontrer des problèmes typographique.

Tout d'abord as-tu effectué une vérification de ton code en mode pas à pas ? Affiche ta requête avant de la lancer (debug.? wSQL pour l'avoir dans la fenêtre de débogage et checker sa syntaxe).
Dans le cas de ta variable w, j'ai peur que les '''''' ne fassent pas l'affaire ! Dans la plupart des cas avec les requetes SQL sous XL il faut que tu utilises des guillement simples ' ( chr$(39))
Autre chose essaie d'utiliser la méthode copyfromrecordset pour l'object Range:
Code:
Range('D15').CopyFromRecorset MyRS

HTH
 

Statistiques des forums

Discussions
312 464
Messages
2 088 630
Membres
103 895
dernier inscrit
jrlauret