comment faire une requête avec plusieurs paramètres ?? [access] - VB/VBA/VBS - Programmation
Marsh Posté le 04-06-2004 à 15:51:34
es ce que tu pourais donne la requete qui ne marche pas pour que l'on voit ce que tu fait
Marsh Posté le 04-06-2004 à 16:02:31
SELECT [listeannéescolaire].[nomannéesco], Sum([CLASSE].[eltotal]) AS SommeDeeltotal, [listeclasse].[niveauinterministeriel]
FROM listeregion INNER JOIN (listeetablissement INNER JOIN (listeclasse INNER JOIN (listeannéescolaire INNER JOIN CLASSE ON [listeannéescolaire].[nuannéesco]=[CLASSE].[nuannee]) ON [listeclasse].[nuclasse]=[CLASSE].[nuclasse]) ON [listeetablissement].[nuetab]=[CLASSE].[nuetab]) ON [listeregion].[nuregion]=[listeetablissement].[nuregionuai]
GROUP BY [listeannéescolaire].[nomannéesco], [listeclasse].[niveauinterministeriel], [listeregion].[nuregion], [listeannéescolaire].[nuannéesco]
HAVING (((listeregion.nuregion)=[Formulaires]![testchoix]![Modifiablelisteregion].[listindex]-1) AND ((listeannéescolaire.nuannéesco)=[Formulaires]![testchoix]![Modifiablelisteannée].[listindex]-1));
Marsh Posté le 04-06-2004 à 16:06:20
pourquoi ne pas faire une requete comme ceci :
SELECT [listeannéescolaire].[nomannéesco], Sum([CLASSE].[eltotal]) AS SommeDeeltotal, [listeclasse].[niveauinterministeriel]
FROM listeregion INNER JOIN (listeetablissement INNER JOIN (listeclasse INNER JOIN (listeannéescolaire INNER JOIN CLASSE ON [listeannéescolaire].[nuannéesco]=[CLASSE].[nuannee]) ON [listeclasse].[nuclasse]=[CLASSE].[nuclasse]) ON [listeetablissement].[nuetab]=[CLASSE].[nuetab]) ON [listeregion].[nuregion]=[listeetablissement].[nuregionuai]
WHERE ((listeregion.nuregion)=[Formulaires]![testchoix]![Modifiablelisteregion].[listindex]-1) AND ((listeannéescolaire.nuannéesco)=[Formulaires]![testchoix]![Modifiablelisteannée].[listindex]-1);
Marsh Posté le 04-06-2004 à 16:06:49
je m'explique !! (normal )))
si je passe cette ligne en fin de requete
HAVING (((listeregion.nuregion)=22) AND ((listeannéescolaire.nuannéesco)=[Formulaires]![testchoix]![Modifiablelisteannée].[listindex]-1));
la requête fonctionne ! mais si je récupère aussi le nuregion (le 22) dans un formulaire, du style :
HAVING (((listeregion.nuregion)=[Formulaires]![testchoix]![Modifiablelisteregion].[listindex]-1) AND ((listeannéescolaire.nuannéesco)=[Formulaires]![testchoix]![Modifiablelisteannée].[listindex]-1));
plus rien ne se passe !!
je n'ai pas d'erreur mais la requête n'affiche rien du tt !
et là je comprend vraiment pas pourquoi ?
Marsh Posté le 04-06-2004 à 16:13:38
SELECT listeetablissement.famille, listeetablissement.nometab, listedepartement.nomdep, CLASSE.cleclasse, listeclasse.typeclasse, CLASSE.eltotal
FROM (listedepartement INNER JOIN listeetablissement ON listedepartement.nudep = listeetablissement.nudepartementuai) INNER JOIN (listeclasse INNER JOIN CLASSE ON listeclasse.nuclasse = CLASSE.nuclasse) ON listeetablissement.nuetab = CLASSE.nuetab
WHERE (((listeetablissement.famille)=[Formulaires]![Formulaire2]![Modifiable7]) AND ((listeclasse.typeclasse)=[Formulaires]![Formulaire2]![Modifiable20]));
Marsh Posté le 04-06-2004 à 16:26:47
meme genre de requetes qui ne fonctionne pas !!
pourtant je suis sur d'obtenir un résultat avec cette requete!!!!
c-a-d que si je passe un des deux paramètre directement au lieu de le recup dans un formulaire ma requete fonctionne
Marsh Posté le 04-06-2004 à 15:50:09
salut,
j'effectue des requêtes en récupérant des paramètres dans un formulaire, à l'aide du code suivant :
[Formulaires]![testchoix]![Modifiablelisteannée].value
si je récupère un seul paramètre dans ma requète celle-ci fonctionne !! par contre je n'arrive pas à effectuer de requêtes en récupérant plusieurs paramètres .....
par exemple: je choisi l'année et le lieu dans un formulaire et j'effectue ma requête en fonction de l'année et du lieu choisi .
quelqu'un aurait-il une idée de comment faire ça ???