Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Critères de selection dans une requete Analyse Croisée

7 réponses
Avatar
jymgo
Bonjour.
J'utilise des requêtes Analyse Croisée. J'essaie d'appliquer un critère de
sélection sur une variable date (pour n'analyser qu'une période choisie) en
récupérant les variables Datemin et Datemax sur un formulaire. Le système ne
reconnait pas ma variable [formulaire]![edition]![datemin] comme une
expression correcte, alors que cette syntaxe fonctionne avec les autres
requêtes simples. Comment contourner le problème ? Je vous remercie par avance
Jymgo

7 réponses

Avatar
Michel__D
Bonjour,

jymgo a écrit :
Bonjour.
J'utilise des requêtes Analyse Croisée. J'essaie d'appliquer un critère de
sélection sur une variable date (pour n'analyser qu'une période choisie) en
récupérant les variables Datemin et Datemax sur un formulaire. Le système ne
reconnait pas ma variable [formulaire]![edition]![datemin] comme une
expression correcte, alors que cette syntaxe fonctionne avec les autres
requêtes simples. Comment contourner le problème ? Je vous remercie par avance
Jymgo



Donne le SQL de la requête simple qui marche ainsi que le SQL de la requête d'analyse croisée.
Avatar
jymgo
Voici le SQL de la requête avec la condition. J'ai consulté le forum
concernant tout ce qui concernait les Req Ana Croisées. La mise de critères
entre # ne fonctionne pas.
TRANSFORM Sum(Leçons.[Montant payé]) AS [SommeDeMontant payé]
SELECT Leçons.DatePrestation, Sum(Leçons.[Montant payé]) AS [Total de
Montant payé]
FROM Leçons
WHERE (((Leçons.DatePrestation) Between [formulaires]![leçons]![datemin] And
[formulaires]![leçons]![datemax]) AND ((Leçons.Famille)<>5 And
(Leçons.Famille)<>6 And (Leçons.Famille)<>9))
GROUP BY Leçons.DatePrestation

Merci d'avance
Jymgo
PIVOT Leçons.Famille;


"Michel__D" a écrit :

Bonjour,

jymgo a écrit :
> Bonjour.
> J'utilise des requêtes Analyse Croisée. J'essaie d'appliquer un critère de
> sélection sur une variable date (pour n'analyser qu'une période choisie) en
> récupérant les variables Datemin et Datemax sur un formulaire. Le système ne
> reconnait pas ma variable [formulaire]![edition]![datemin] comme une
> expression correcte, alors que cette syntaxe fonctionne avec les autres
> requêtes simples. Comment contourner le problème ? Je vous remercie par avance
> Jymgo

Donne le SQL de la requête simple qui marche ainsi que le SQL de la requête d'analyse croisée.



Avatar
Michel__D
Bonjour,

Je ne vois pas l'exemple de la requête simple qui marche avec :
[formulaires]![leçons]![datemin] ou [formulaires]![leçons]![datemax]


"jymgo" a écrit dans le message de news:
Voici le SQL de la requête avec la condition. J'ai consulté le forum
concernant tout ce qui concernait les Req Ana Croisées. La mise de critères
entre # ne fonctionne pas.
TRANSFORM Sum(Leçons.[Montant payé]) AS [SommeDeMontant payé]
SELECT Leçons.DatePrestation, Sum(Leçons.[Montant payé]) AS [Total de
Montant payé]
FROM Leçons
WHERE (((Leçons.DatePrestation) Between [formulaires]![leçons]![datemin] And
[formulaires]![leçons]![datemax]) AND ((Leçons.Famille)<>5 And
(Leçons.Famille)<>6 And (Leçons.Famille)<>9))
GROUP BY Leçons.DatePrestation

Merci d'avance
Jymgo
PIVOT Leçons.Famille;


"Michel__D" a écrit :

Bonjour,

jymgo a écrit :
> Bonjour.
> J'utilise des requêtes Analyse Croisée. J'essaie d'appliquer un critère de
> sélection sur une variable date (pour n'analyser qu'une période choisie) en
> récupérant les variables Datemin et Datemax sur un formulaire. Le système ne
> reconnait pas ma variable [formulaire]![edition]![datemin] comme une
> expression correcte, alors que cette syntaxe fonctionne avec les autres
> requêtes simples. Comment contourner le problème ? Je vous remercie par avance
> Jymgo

Donne le SQL de la requête simple qui marche ainsi que le SQL de la requête d'analyse croisée.





Avatar
jymgo
Désolé, je pensais que le SQL de la RAC était suffisant. Voici le SQL de
l'une des nombreuses requêtes (une des plus simple) qui utilisent la
condition de date :

SELECT Tarif.Famille, Count(Famille.Famille) AS CompteDeFamille,
Sum(Leçons.EnsQteParc) AS SommeDeEnsQteParc, Sum(Leçons.QteDivers) AS
SommeDeQteDivers, Count(Tarif.Code) AS CompteDeCode
FROM (Famille INNER JOIN Tarif ON Famille.N°Famille = Tarif.Famille) INNER
JOIN Leçons ON Tarif.N°tarif = Leçons.Codeprestation1
WHERE (((Leçons.DatePrestation) Between [formulaires]![edition]![datemin]
And [formulaires]![edition]![datemax]))
GROUP BY Tarif.Famille;

Merci pour le temps passé
Crdt



"Michel__D" a écrit :

Bonjour,

Je ne vois pas l'exemple de la requête simple qui marche avec :
[formulaires]![leçons]![datemin] ou [formulaires]![leçons]![datemax]


"jymgo" a écrit dans le message de news:
> Voici le SQL de la requête avec la condition. J'ai consulté le forum
> concernant tout ce qui concernait les Req Ana Croisées. La mise de critères
> entre # ne fonctionne pas.
> TRANSFORM Sum(Leçons.[Montant payé]) AS [SommeDeMontant payé]
> SELECT Leçons.DatePrestation, Sum(Leçons.[Montant payé]) AS [Total de
> Montant payé]
> FROM Leçons
> WHERE (((Leçons.DatePrestation) Between [formulaires]![leçons]![datemin] And
> [formulaires]![leçons]![datemax]) AND ((Leçons.Famille)<>5 And
> (Leçons.Famille)<>6 And (Leçons.Famille)<>9))
> GROUP BY Leçons.DatePrestation
>
> Merci d'avance
> Jymgo
> PIVOT Leçons.Famille;
>
>
> "Michel__D" a écrit :
>
>> Bonjour,
>>
>> jymgo a écrit :
>> > Bonjour.
>> > J'utilise des requêtes Analyse Croisée. J'essaie d'appliquer un critère de
>> > sélection sur une variable date (pour n'analyser qu'une période choisie) en
>> > récupérant les variables Datemin et Datemax sur un formulaire. Le système ne
>> > reconnait pas ma variable [formulaire]![edition]![datemin] comme une
>> > expression correcte, alors que cette syntaxe fonctionne avec les autres
>> > requêtes simples. Comment contourner le problème ? Je vous remercie par avance
>> > Jymgo
>>
>> Donne le SQL de la requête simple qui marche ainsi que le SQL de la requête d'analyse croisée.
>>




Avatar
Michel__D
Bonjour,

C'est pour être sur du bon format des champs, essaye avec ce qui suit :

TRANSFORM Sum(T1.[Montant payé]) AS [SommeDeMontant payé]
SELECT T1.DatePrestation, Sum(T1.[Montant payé]) AS [Total de Montant payé]
FROM [Leçons] AS T1
WHERE (T1.DatePrestation Between
[formulaires]![leçons]![datemin] And [formulaires]![leçons]![datemax])
And (T1.Famille<>5) And (T1.Famille<>6) And (T1.Famille)<>9)
GROUP BY T1.DatePrestation
PIVOT T1.Famille;

Si cela ne fonctionne pas essaye en renommant ton formulaire [leçons] en autre chose.

PS:Tu pourrais aussi revoir le nom de la table [Leçons] (en évitant les caractères spécifiques et accentués).


"jymgo" a écrit dans le message de news:
Désolé, je pensais que le SQL de la RAC était suffisant. Voici le SQL de
l'une des nombreuses requêtes (une des plus simple) qui utilisent la
condition de date :

SELECT Tarif.Famille, Count(Famille.Famille) AS CompteDeFamille,
Sum(Leçons.EnsQteParc) AS SommeDeEnsQteParc, Sum(Leçons.QteDivers) AS
SommeDeQteDivers, Count(Tarif.Code) AS CompteDeCode
FROM (Famille INNER JOIN Tarif ON Famille.N°Famille = Tarif.Famille) INNER
JOIN Leçons ON Tarif.N°tarif = Leçons.Codeprestation1
WHERE (((Leçons.DatePrestation) Between [formulaires]![edition]![datemin]
And [formulaires]![edition]![datemax]))
GROUP BY Tarif.Famille;

Merci pour le temps passé
Crdt



"Michel__D" a écrit :

Bonjour,

Je ne vois pas l'exemple de la requête simple qui marche avec :
[formulaires]![leçons]![datemin] ou [formulaires]![leçons]![datemax]


"jymgo" a écrit dans le message de news:
> Voici le SQL de la requête avec la condition. J'ai consulté le forum
> concernant tout ce qui concernait les Req Ana Croisées. La mise de critères
> entre # ne fonctionne pas.
> TRANSFORM Sum(Leçons.[Montant payé]) AS [SommeDeMontant payé]
> SELECT Leçons.DatePrestation, Sum(Leçons.[Montant payé]) AS [Total de
> Montant payé]
> FROM Leçons
> WHERE (((Leçons.DatePrestation) Between [formulaires]![leçons]![datemin] And
> [formulaires]![leçons]![datemax]) AND ((Leçons.Famille)<>5 And
> (Leçons.Famille)<>6 And (Leçons.Famille)<>9))
> GROUP BY Leçons.DatePrestation
>
> Merci d'avance
> Jymgo
> PIVOT Leçons.Famille;
>
>
> "Michel__D" a écrit :
>
>> Bonjour,
>>
>> jymgo a écrit :
>> > Bonjour.
>> > J'utilise des requêtes Analyse Croisée. J'essaie d'appliquer un critère de
>> > sélection sur une variable date (pour n'analyser qu'une période choisie) en
>> > récupérant les variables Datemin et Datemax sur un formulaire. Le système ne
>> > reconnait pas ma variable [formulaire]![edition]![datemin] comme une
>> > expression correcte, alors que cette syntaxe fonctionne avec les autres
>> > requêtes simples. Comment contourner le problème ? Je vous remercie par avance
>> > Jymgo
>>
>> Donne le SQL de la requête simple qui marche ainsi que le SQL de la requête d'analyse croisée.
>>






Avatar
jymgo
Bonjour Michel__D

Malgré tous les essais (table renommée, formulaire Edition renommé), le
système Access ne veut rien savoir. La pose de critères de date ne lui
convient pas. Ces dates sont reprises dans un formulaire général d'édition
nommé (avec originalité) Edition (sans accent ni ponctuation). y aurait-il
une autre piste ?
A nouveau merci pour le temps passé. Jymgo

"Michel__D" a écrit :

Bonjour,

C'est pour être sur du bon format des champs, essaye avec ce qui suit :

TRANSFORM Sum(T1.[Montant payé]) AS [SommeDeMontant payé]
SELECT T1.DatePrestation, Sum(T1.[Montant payé]) AS [Total de Montant payé]
FROM [Leçons] AS T1
WHERE (T1.DatePrestation Between
[formulaires]![leçons]![datemin] And [formulaires]![leçons]![datemax])
And (T1.Famille<>5) And (T1.Famille<>6) And (T1.Famille)<>9)
GROUP BY T1.DatePrestation
PIVOT T1.Famille;

Si cela ne fonctionne pas essaye en renommant ton formulaire [leçons] en autre chose.

PS:Tu pourrais aussi revoir le nom de la table [Leçons] (en évitant les caractères spécifiques et accentués).


"jymgo" a écrit dans le message de news:
> Désolé, je pensais que le SQL de la RAC était suffisant. Voici le SQL de
> l'une des nombreuses requêtes (une des plus simple) qui utilisent la
> condition de date :
>
> SELECT Tarif.Famille, Count(Famille.Famille) AS CompteDeFamille,
> Sum(Leçons.EnsQteParc) AS SommeDeEnsQteParc, Sum(Leçons.QteDivers) AS
> SommeDeQteDivers, Count(Tarif.Code) AS CompteDeCode
> FROM (Famille INNER JOIN Tarif ON Famille.N°Famille = Tarif.Famille) INNER
> JOIN Leçons ON Tarif.N°tarif = Leçons.Codeprestation1
> WHERE (((Leçons.DatePrestation) Between [formulaires]![edition]![datemin]
> And [formulaires]![edition]![datemax]))
> GROUP BY Tarif.Famille;
>
> Merci pour le temps passé
> Crdt
>
>
>
> "Michel__D" a écrit :
>
>> Bonjour,
>>
>> Je ne vois pas l'exemple de la requête simple qui marche avec :
>> [formulaires]![leçons]![datemin] ou [formulaires]![leçons]![datemax]
>>
>>
>> "jymgo" a écrit dans le message de news:
>> > Voici le SQL de la requête avec la condition. J'ai consulté le forum
>> > concernant tout ce qui concernait les Req Ana Croisées. La mise de critères
>> > entre # ne fonctionne pas.
>> > TRANSFORM Sum(Leçons.[Montant payé]) AS [SommeDeMontant payé]
>> > SELECT Leçons.DatePrestation, Sum(Leçons.[Montant payé]) AS [Total de
>> > Montant payé]
>> > FROM Leçons
>> > WHERE (((Leçons.DatePrestation) Between [formulaires]![leçons]![datemin] And
>> > [formulaires]![leçons]![datemax]) AND ((Leçons.Famille)<>5 And
>> > (Leçons.Famille)<>6 And (Leçons.Famille)<>9))
>> > GROUP BY Leçons.DatePrestation
>> >
>> > Merci d'avance
>> > Jymgo
>> > PIVOT Leçons.Famille;
>> >
>> >
>> > "Michel__D" a écrit :
>> >
>> >> Bonjour,
>> >>
>> >> jymgo a écrit :
>> >> > Bonjour.
>> >> > J'utilise des requêtes Analyse Croisée. J'essaie d'appliquer un critère de
>> >> > sélection sur une variable date (pour n'analyser qu'une période choisie) en
>> >> > récupérant les variables Datemin et Datemax sur un formulaire. Le système ne
>> >> > reconnait pas ma variable [formulaire]![edition]![datemin] comme une
>> >> > expression correcte, alors que cette syntaxe fonctionne avec les autres
>> >> > requêtes simples. Comment contourner le problème ? Je vous remercie par avance
>> >> > Jymgo
>> >>
>> >> Donne le SQL de la requête simple qui marche ainsi que le SQL de la requête d'analyse croisée.
>> >>
>>
>>




Avatar
jymgo
Salut Michel__D

Après de nombreuses recherches dans différents forums, j'ai enfin trouvé la
solution. Le SQL de la RAC est le suivant
PARAMETERS [formulaires]![edition]![Datemin] DateTime,
[formulaires]![edition]![Datemax] DateTime;
TRANSFORM Sum(Leçons.[Montant payé]) AS [SommeDeMontant payé]
SELECT Leçons.DatePrestation, Sum(Leçons.[Montant payé]) AS [Total de
Montant payé]
FROM Leçons
WHERE (((Leçons.DatePrestation)>[formulaires]![edition]![Datemin] And
(Leçons.DatePrestation)<[formulaires]![edition]![Datemax]) AND
((Leçons.Famille)<>5))
GROUP BY Leçons.DatePrestation
PIVOT Leçons.Famille;
Merci encore pour ton aide.
J'espère que ce post permettra à bon nombre de lecteurs de gagner du temps
Jymgo

"jymgo" a écrit :

Bonjour Michel__D

Malgré tous les essais (table renommée, formulaire Edition renommé), le
système Access ne veut rien savoir. La pose de critères de date ne lui
convient pas. Ces dates sont reprises dans un formulaire général d'édition
nommé (avec originalité) Edition (sans accent ni ponctuation). y aurait-il
une autre piste ?
A nouveau merci pour le temps passé. Jymgo

"Michel__D" a écrit :

> Bonjour,
>
> C'est pour être sur du bon format des champs, essaye avec ce qui suit :
>
> TRANSFORM Sum(T1.[Montant payé]) AS [SommeDeMontant payé]
> SELECT T1.DatePrestation, Sum(T1.[Montant payé]) AS [Total de Montant payé]
> FROM [Leçons] AS T1
> WHERE (T1.DatePrestation Between
> [formulaires]![leçons]![datemin] And [formulaires]![leçons]![datemax])
> And (T1.Famille<>5) And (T1.Famille<>6) And (T1.Famille)<>9)
> GROUP BY T1.DatePrestation
> PIVOT T1.Famille;
>
> Si cela ne fonctionne pas essaye en renommant ton formulaire [leçons] en autre chose.
>
> PS:Tu pourrais aussi revoir le nom de la table [Leçons] (en évitant les caractères spécifiques et accentués).
>
>
> "jymgo" a écrit dans le message de news:
> > Désolé, je pensais que le SQL de la RAC était suffisant. Voici le SQL de
> > l'une des nombreuses requêtes (une des plus simple) qui utilisent la
> > condition de date :
> >
> > SELECT Tarif.Famille, Count(Famille.Famille) AS CompteDeFamille,
> > Sum(Leçons.EnsQteParc) AS SommeDeEnsQteParc, Sum(Leçons.QteDivers) AS
> > SommeDeQteDivers, Count(Tarif.Code) AS CompteDeCode
> > FROM (Famille INNER JOIN Tarif ON Famille.N°Famille = Tarif.Famille) INNER
> > JOIN Leçons ON Tarif.N°tarif = Leçons.Codeprestation1
> > WHERE (((Leçons.DatePrestation) Between [formulaires]![edition]![datemin]
> > And [formulaires]![edition]![datemax]))
> > GROUP BY Tarif.Famille;
> >
> > Merci pour le temps passé
> > Crdt
> >
> >
> >
> > "Michel__D" a écrit :
> >
> >> Bonjour,
> >>
> >> Je ne vois pas l'exemple de la requête simple qui marche avec :
> >> [formulaires]![leçons]![datemin] ou [formulaires]![leçons]![datemax]
> >>
> >>
> >> "jymgo" a écrit dans le message de news:
> >> > Voici le SQL de la requête avec la condition. J'ai consulté le forum
> >> > concernant tout ce qui concernait les Req Ana Croisées. La mise de critères
> >> > entre # ne fonctionne pas.
> >> > TRANSFORM Sum(Leçons.[Montant payé]) AS [SommeDeMontant payé]
> >> > SELECT Leçons.DatePrestation, Sum(Leçons.[Montant payé]) AS [Total de
> >> > Montant payé]
> >> > FROM Leçons
> >> > WHERE (((Leçons.DatePrestation) Between [formulaires]![leçons]![datemin] And
> >> > [formulaires]![leçons]![datemax]) AND ((Leçons.Famille)<>5 And
> >> > (Leçons.Famille)<>6 And (Leçons.Famille)<>9))
> >> > GROUP BY Leçons.DatePrestation
> >> >
> >> > Merci d'avance
> >> > Jymgo
> >> > PIVOT Leçons.Famille;
> >> >
> >> >
> >> > "Michel__D" a écrit :
> >> >
> >> >> Bonjour,
> >> >>
> >> >> jymgo a écrit :
> >> >> > Bonjour.
> >> >> > J'utilise des requêtes Analyse Croisée. J'essaie d'appliquer un critère de
> >> >> > sélection sur une variable date (pour n'analyser qu'une période choisie) en
> >> >> > récupérant les variables Datemin et Datemax sur un formulaire. Le système ne
> >> >> > reconnait pas ma variable [formulaire]![edition]![datemin] comme une
> >> >> > expression correcte, alors que cette syntaxe fonctionne avec les autres
> >> >> > requêtes simples. Comment contourner le problème ? Je vous remercie par avance
> >> >> > Jymgo
> >> >>
> >> >> Donne le SQL de la requête simple qui marche ainsi que le SQL de la requête d'analyse croisée.
> >> >>
> >>
> >>
>
>