[access VBA] coder une requête SQL en VBA

fredo91170 Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
blux Messages postés 27131 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour à tous

Voile je suis tout nouveau sur ce site et qui plus est je débute en programmation.
Ma question ne me semble pas difficile, néanmoins j'aimerai savoir si quelqu'un pourrai m'aider à coder totalement cette requête acces en code SQL vers du langage VBA:

SELECT [Sales Orders It Macro].[Opé], [Sales Orders It Macro].[Lp], [Sales Orders It Macro].[Titre], [Sales Orders It Macro].[Raison], Sum([Sales Orders It Macro].[Qte]) AS SumOfQte, Avg([Sales Orders It Macro].[Mt]) AS AvgOfMt
FROM [Sales Orders It Macro]
GROUP BY [Sales Orders It Macro].[Opé], [Sales Orders It Macro].[Lp], [Sales Orders It Macro].[Titre], [Sales Orders It Macro].[Raison]
HAVING ((([Sales Orders It Macro].Opé)="200640C") AND ((Avg([Sales Orders It Macro].Mt))>0));

Merci infiniement pour vos réponses

1 réponse

blux Messages postés 27131 Date d'inscription   Statut Modérateur Dernière intervention   3 361
 
Salut,

il faut mettre ton code dans une chaine (en évitant les guillemets puisqu'on en a dans la définition de la chaine), puis définir une requête qu'on pourra exécuter :
Dim Str as String
Dim Req As QueryDef
Str = "SELECT [Sales Orders It Macro].[Opé], [Sales Orders It Macro].[Lp], [Sales Orders It Macro].[Titre], [Sales Orders It Macro].[Raison], Sum([Sales Orders It Macro].[Qte]) "
Str = Str + "AS SumOfQte, Avg([Sales Orders It Macro].[Mt]) AS AvgOfMt
FROM [Sales Orders It Macro] "
Str = Str + "....."
Str = Str + "HAVING ((([Sales Orders It Macro].Opé)='200640C') AND ((Avg([Sales Orders It Macro].Mt))>0));" 
Set Req = CurrentDb.CreateQueryDef("", Str)
Req.Execute dbFailOnError
0