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

Fonction d'agrégat

3 réponses
Avatar
C15
Bonjour à tous et toutes,

J'ai une base pour gérer une association.

J'ai fait une requête pour vérifier le retard des cotisations sur les 5
dernières années.

Je veux la modifier pour que, pour les nouveaux adhérents, seule la
cotisation actuelle apparaisse.

J'ai donc modifier ma formule selon :

SELECT [T Adhérents].N°Adherent, [T Adhérents].Nom, [T Adhérents].Prenom,
IIf([T Adhérents]![N°Adherent]=Max([T Adhérents]![N°Adherent]),15,[T
Adhérents]![Du07]+[T Adhérents]![Du06]+[T Adhérents]![Du05]+[T
Adhérents]![Du04]+[T Adhérents]![Du03]+[T Adhérents]![Du02]) AS Montant_dû
FROM [T Adhérents]
WHERE ((([T Adhérents].Adherent)=True));

pour dire : si le N° d'adhérent est égal au N° adhérent le plus grand (donc
c'est le dernier), alors la cotisation est de 15 ?, sinon le montant dû est
la somme des cotisations dues des 5 dernières années.

J'ai une erreur me disant "vous avez essayé d'exécuter une requête ne
comprenant pas l'expression spécifiée N° d'adhérent comme une partie de la
fonction d'agrégat".

A quoi cela correspond-il alors que je n'ai pas fait de regroupement ?

Merci de votre aide

A+

C15

3 réponses

Avatar
Pierre CFI [mvp]
Bonjour
tu emploies Max, mais c'est excel çà :o))
utilise Dmax (maxdom) voir aide pour infos

--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
" C15" a écrit dans le message de
news: 4604e897$0$21151$
Bonjour à tous et toutes,

J'ai une base pour gérer une association.

J'ai fait une requête pour vérifier le retard des cotisations sur les 5
dernières années.

Je veux la modifier pour que, pour les nouveaux adhérents, seule la
cotisation actuelle apparaisse.

J'ai donc modifier ma formule selon :

SELECT [T Adhérents].N°Adherent, [T Adhérents].Nom, [T Adhérents].Prenom,
IIf([T Adhérents]![N°Adherent]=Max([T Adhérents]![N°Adherent]),15,[T
Adhérents]![Du07]+[T Adhérents]![Du06]+[T Adhérents]![Du05]+[T
Adhérents]![Du04]+[T Adhérents]![Du03]+[T Adhérents]![Du02]) AS Montant_dû
FROM [T Adhérents]
WHERE ((([T Adhérents].Adherent)=True));

pour dire : si le N° d'adhérent est égal au N° adhérent le plus grand
(donc c'est le dernier), alors la cotisation est de 15 ?, sinon le montant
dû est la somme des cotisations dues des 5 dernières années.

J'ai une erreur me disant "vous avez essayé d'exécuter une requête ne
comprenant pas l'expression spécifiée N° d'adhérent comme une partie de la
fonction d'agrégat".

A quoi cela correspond-il alors que je n'ai pas fait de regroupement ?

Merci de votre aide

A+

C15




Avatar
C15
Bonjour,

Suis-je bête !

Merci l'arpète.

A+

C15


"Pierre CFI [mvp]" a écrit dans le message de
news:
Bonjour
tu emploies Max, mais c'est excel çà :o))
utilise Dmax (maxdom) voir aide pour infos

--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
" C15" a écrit dans le message de
news: 4604e897$0$21151$
Bonjour à tous et toutes,

J'ai une base pour gérer une association.

J'ai fait une requête pour vérifier le retard des cotisations sur les 5
dernières années.

Je veux la modifier pour que, pour les nouveaux adhérents, seule la
cotisation actuelle apparaisse.

J'ai donc modifier ma formule selon :

SELECT [T Adhérents].N°Adherent, [T Adhérents].Nom, [T Adhérents].Prenom,
IIf([T Adhérents]![N°Adherent]=Max([T Adhérents]![N°Adherent]),15,[T
Adhérents]![Du07]+[T Adhérents]![Du06]+[T Adhérents]![Du05]+[T
Adhérents]![Du04]+[T Adhérents]![Du03]+[T Adhérents]![Du02]) AS
Montant_dû
FROM [T Adhérents]
WHERE ((([T Adhérents].Adherent)=True));

pour dire : si le N° d'adhérent est égal au N° adhérent le plus grand
(donc c'est le dernier), alors la cotisation est de 15 ?, sinon le
montant dû est la somme des cotisations dues des 5 dernières années.

J'ai une erreur me disant "vous avez essayé d'exécuter une requête ne
comprenant pas l'expression spécifiée N° d'adhérent comme une partie de
la fonction d'agrégat".

A quoi cela correspond-il alors que je n'ai pas fait de regroupement ?

Merci de votre aide

A+

C15








Avatar
C15
Rebonjour,

En fait ma question est un peu plus compliquée.

Pour les adhérents s'inscrivant entre le 1/10 de l'année précédente et le
30/09 de l'année actuelle la somme due est la cotisation annuelle (15?) pour
les autres elle est la sommes des cotisations des 5 années précédentes.

Merci de votre aide

A+

C15
" C15" a écrit dans le message de
news: 4606038a$0$21142$
Bonjour,

Suis-je bête !

Merci l'arpète.

A+

C15


"Pierre CFI [mvp]" a écrit dans le message de
news:
Bonjour
tu emploies Max, mais c'est excel çà :o))
utilise Dmax (maxdom) voir aide pour infos

--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
" C15" a écrit dans le message de
news: 4604e897$0$21151$
Bonjour à tous et toutes,

J'ai une base pour gérer une association.

J'ai fait une requête pour vérifier le retard des cotisations sur les 5
dernières années.

Je veux la modifier pour que, pour les nouveaux adhérents, seule la
cotisation actuelle apparaisse.

J'ai donc modifier ma formule selon :

SELECT [T Adhérents].N°Adherent, [T Adhérents].Nom, [T
Adhérents].Prenom, IIf([T Adhérents]![N°Adherent]=Max([T
Adhérents]![N°Adherent]),15,[T Adhérents]![Du07]+[T Adhérents]![Du06]+[T
Adhérents]![Du05]+[T Adhérents]![Du04]+[T Adhérents]![Du03]+[T
Adhérents]![Du02]) AS Montant_dû
FROM [T Adhérents]
WHERE ((([T Adhérents].Adherent)=True));

pour dire : si le N° d'adhérent est égal au N° adhérent le plus grand
(donc c'est le dernier), alors la cotisation est de 15 ?, sinon le
montant dû est la somme des cotisations dues des 5 dernières années.

J'ai une erreur me disant "vous avez essayé d'exécuter une requête ne
comprenant pas l'expression spécifiée N° d'adhérent comme une partie de
la fonction d'agrégat".

A quoi cela correspond-il alors que je n'ai pas fait de regroupement ?

Merci de votre aide

A+

C15