Access Champ calculé Date maximum
Résolu
lulu37
Messages postés
80
Statut
Membre
-
blux Messages postés 27824 Statut Modérateur -
blux Messages postés 27824 Statut Modérateur -
Bonjour,
J'ai créé une petite base de données pour suivre des rendez vous clients.
Je souhaiterais faire apparaître la date du dernier RDV pour chaque client sur un formulaire mais je n'y arrive pas.
Je m'explique :
J'ai 2 tables
- 1 pour la liste des clients
- 1 pour les entretiens (Comptes-rendus d'entretien) dont champ "date RDV"
ces 2 tables sont reliées par la refClient
Mon formulaire affiche le listing des clients
J'ai mis dans mon champ "Dernier RDV" du formulaire :
=MaxDom("[DateRDV]";"[Comptes-rendus d'entretien]")
Mais, le résultat retourné est une date unique : la date max pour tous les clients confondus
Avez vous la solution SVP ?
Merci d'avance
Lulu
Access 2003
J'ai créé une petite base de données pour suivre des rendez vous clients.
Je souhaiterais faire apparaître la date du dernier RDV pour chaque client sur un formulaire mais je n'y arrive pas.
Je m'explique :
J'ai 2 tables
- 1 pour la liste des clients
- 1 pour les entretiens (Comptes-rendus d'entretien) dont champ "date RDV"
ces 2 tables sont reliées par la refClient
Mon formulaire affiche le listing des clients
J'ai mis dans mon champ "Dernier RDV" du formulaire :
=MaxDom("[DateRDV]";"[Comptes-rendus d'entretien]")
Mais, le résultat retourné est une date unique : la date max pour tous les clients confondus
Avez vous la solution SVP ?
Merci d'avance
Lulu
Access 2003
2 réponses
Salut,
ce qui arrive est tout à fait normal.
Il faut rajouter un paramètre à maxdom, dans lequel tu lui indiques la refclient pour laquelle du veux le maxi...
ce qui arrive est tout à fait normal.
Il faut rajouter un paramètre à maxdom, dans lequel tu lui indiques la refclient pour laquelle du veux le maxi...
Bonjour lulu37,
Avec cette syntaxe vous obtiendrez, après adaptation, je pense, satisfaction.
A noter qu'en remplaçant last par first vous obtiendrez le contraire .....
SELECT <Table.champ>, Last(<TABLE>.[<champ_date>]) AS DernierDe<champ_date>]
FROM VALEURS
GROUP BY <Table.champ>
ORDER BY <Table.champ>, Last(<TABLE>.[<champ_date>]);
Cordialement
Avec cette syntaxe vous obtiendrez, après adaptation, je pense, satisfaction.
A noter qu'en remplaçant last par first vous obtiendrez le contraire .....
SELECT <Table.champ>, Last(<TABLE>.[<champ_date>]) AS DernierDe<champ_date>]
FROM VALEURS
GROUP BY <Table.champ>
ORDER BY <Table.champ>, Last(<TABLE>.[<champ_date>]);
Cordialement
Bonjour Jean Jacques,
Comme je l'ai annoncé à Blux, je suis débutante et ai du mal avec toutes ces syntaxes.
J'ai indiqué ceci dans la source de mon contrôle mais ça m'indique une valeur d'erreur #NOM?
SELECT CR.RefClient, Last(CR.[DateRDV]) AS DernierDe [DateRDV] FROM VALEURS GROUP BY CR.RefClient ORDER BY CR.RefClient, Last(CR.[DateRDV]) ;
je ne fais donc référence qu'à ma table CR (=comptes rendus d'entretien) dans laquelle se trouvent les dates des RDV champ DateRDV et la RefClient pour laquelle je souhaite chaque valeur max....??
Où est l'erreur ?
Si vous pouvez m'expliquer un peu le principe de la syntaxe ça pourrait m'être très utile pour la suite également
Merci d'avance
Lulu
Comme je l'ai annoncé à Blux, je suis débutante et ai du mal avec toutes ces syntaxes.
J'ai indiqué ceci dans la source de mon contrôle mais ça m'indique une valeur d'erreur #NOM?
SELECT CR.RefClient, Last(CR.[DateRDV]) AS DernierDe [DateRDV] FROM VALEURS GROUP BY CR.RefClient ORDER BY CR.RefClient, Last(CR.[DateRDV]) ;
je ne fais donc référence qu'à ma table CR (=comptes rendus d'entretien) dans laquelle se trouvent les dates des RDV champ DateRDV et la RefClient pour laquelle je souhaite chaque valeur max....??
Où est l'erreur ?
Si vous pouvez m'expliquer un peu le principe de la syntaxe ça pourrait m'être très utile pour la suite également
Merci d'avance
Lulu
Je suis débutante sous access, du coup je ne comprend pas encore très bien la synthaxe
Comment je peux adapter ma formule ?
=MaxDom("[DateRDV]";"[Comptes-rendus d'entretien]";"[RefClient]"= ??? )
Merci d'avance
=MaxDom("[DateRDV]";"[CR]";"[RefClient]=" & [RefClient])
Ca y est ça marche !
Merci beaucoup