Bonjour à tous,
Je souhaite réaliser un cumul d'un nombre d'études par mois pour une année et une entreprise données (sous entendu choisies par l'utilisateur dans une liste modifiable).
J'arrive à obtenir sans difficultés le cumul de ce nombre d'études par mois pour une année choisie avec la fonction DSum dans la requête suivante :
Pilotage1Presta essai : requête qui me donne le nombre d'études par mois par prestataire et par année
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT DATE.MOIS, DSum("[Nb E prévues]","Pilotage1Presta essai","MOIS <=" & [DATE].[MOIS] & "And ANNEE =" & [Formulaires]![Tableau de Bord par Entreprise]![Liste0] & "") AS Cumul FROM [DATE], [Pilotage1Presta essai] GROUP BY DATE.MOIS;
DATE : Table possédant 2 champs, ANNEE et MOIS allant de 2008 à 2011 et de 1 à 12 (je sais que mes noms de champs et de table sont mal choisis mais tout mon programme fonctionne parfaitement avec ces noms là)
[Formulaires]![Tableau de Bord par Entreprise]![Liste0] : Intitulé de mon contrôle (liste modifiable) pour le choix de l'année
Seulement dès que je rajoute le critère concernant l'entreprise à savoir :
J'obtiens #Erreur à chaque ligne avec le message suivant lorsque j'approche la souris de l'enregistrement #Erreur...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT DATE.MOIS, DSum("[Nb E prévues]","Pilotage1Presta essai","MOIS <=" & [DATE].[MOIS] & "And ANNEE =" & [Formulaires]![Tableau de Bord par Entreprise]![Liste0] & "And Prestataire =" & [Formulaires]![Tableau de Bord par Entreprise]![Liste1] & "") AS Cumul FROM [DATE], [Pilotage1Presta essai] GROUP BY DATE.MOIS;
...si Entreprise1 a été choisi comme l'entreprise (le même message s'affiche avec tous les prestataires; seul change le nom du prestataire dans le message d'erreur).L'expression entrée comme paramètre de requête est à l'origine de l'erreur suivante : 'L'objet ne contient pas d'objet d'automatisation 'Entreprise1''.
Si je remplace mon [Formulaires]![Tableau de Bord par Entreprise]![Liste1] par le nom d'une entreprise (comme suit) :
Cela fonctionne...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT DATE.MOIS, DSum("[Nb E prévues]","Pilotage1Presta essai","MOIS <=" & [DATE].[MOIS] & "And ANNEE =" & [Formulaires]![Tableau de Bord par Entreprise]![Liste0] & "And Prestataire = 'Entreprise1'" & "") AS Cumul FROM [DATE], [Pilotage1Presta essai] GROUP BY DATE.MOIS;
J'ai essayé de changer l'ordre des critères, de ne garder que le critère "prestataire", de supprimer et recommencer mon contrôle, rien n'y fait...
Quelqu'un aurait une explication ?
Merci à d'avance
Partager