Problème de débutant VBA (Pb d'exécution de Requête) [Résolu]

Signaler
Messages postés
39
Date d'inscription
mardi 2 août 2005
Statut
Membre
Dernière intervention
31 mars 2006
-
Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
-
Bonjour à tous !!

Je sollicite votre aide précisieuse pour une requête Access sous VBA qui ne désire pas fonctionner correctement :

CurrentDb.Execute ("INSERT INTO ETP_Etat12mois_IntN( Annee, Mois, NbreJours, NbHeuresPaie )" & _
"SELECT Nbrejours_ETP.Annee, Nbrejours_ETP.Mois, Nbrejours_ETP.NbreJours, Sum(Etat12mois_glissant_N.NbHeuresPaie) AS SommeDeNbHeuresPaie FROM Etat12mois_glissant_N " & _"INNER JOIN Nbrejours_ETP ON (Etat12mois_glissant_N.Annee Nbrejours_ETP.Annee) AND (Etat12mois_glissant_N.Mois Nbrejours_ETP.Mois) " & _
"GROUP BY Nbrejours_ETP.Annee, Nbrejours_ETP.Mois, Nbrejours_ETP.NbreJours, Etat12mois_glissant_N.CodeAgence" & _
"HAVING (((Etat12mois_glissant_N.CodeAgence)='" & strnomagence & "'));")

En lancant cette requête j'ai un message d'erreur du type - Fonction 'Etat12Mois_glissant_N.CodeAgenceHaving' non défini dans l'expression. Je ne comprends paspourquoi le problème persiste au niveau de cette ligne sachant que je l'effectue généralement toujours pareil et m'entraine aucun problème !!

Merci d'avance !!
Patrick

2 réponses

Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
16
Salut, je n'ai pas regardé plus loin mais déjà il te manque un espace avant ton HAVING.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 179 internautes nous ont dit merci ce mois-ci

Messages postés
809
Date d'inscription
mercredi 11 octobre 2000
Statut
Membre
Dernière intervention
29 septembre 2010
9
Salut pataccees,


A priori, dans le GROUP BY tu dois mettre tous les champs que tu as
dans le SELECT à l'exception de se qui te sert dasn SUM(), MAX(),
COUNT() etc ...



donc je dirais que Etat12mois_glissant_N.CodeAgence
n'a rien à faire là ...



A la place de ton Having, tu peux essayer de mettre dna sla clause WHERE





CurrentDb.Execute ("INSERT INTO ETP_Etat12mois_IntN( Annee, Mois, NbreJours, NbHeuresPaie )" & _
"SELECT
Nbrejours_ETP.Annee, Nbrejours_ETP.Mois, Nbrejours_ETP.NbreJours,
Sum(Etat12mois_glissant_N.NbHeuresPaie) AS SommeDeNbHeuresPaie FROM
Etat12mois_glissant_N " & _
"INNER JOIN Nbrejours_ETP ON
(Etat12mois_glissant_N.Annee = Nbrejours_ETP.Annee) AND
(Etat12mois_glissant_N.Mois = Nbrejours_ETP.Mois) " & _

"
WHERE(((Etat12mois_glissant_N.CodeAgence)='" & strnomagence & "'))
" & _
"GROUP BY Nbrejours_ETP.Annee, Nbrejours_ETP.Mois, Nbrejours_ETP.NbreJours" & ";")




++

Zlub