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

Fermé
fredo91170 Messages postés 7 Date d'inscription vendredi 6 octobre 2006 Statut Membre Dernière intervention 31 juillet 2007 - 6 oct. 2006 à 10:01
blux Messages postés 26006 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 avril 2024 - 6 oct. 2006 à 10:26
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 26006 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 avril 2024 3 289
6 oct. 2006 à 10:26
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