Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette
requette :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message
d'erreur :
"Type de données incompatible dans l'expression du critère"
Or il s'agit bien de donnees de Type Date ! (DDN=Date De Naissance)
Ou est le bug ?
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous !
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette requette :
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message d'erreur : "Type de données incompatible dans l'expression du critère" Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance) Ou est le bug ?
Merci.
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
Salut dadpub !
et avec :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous !
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très
généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette
requette :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message
d'erreur :
"Type de données incompatible dans l'expression du critère"
Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance)
Ou est le bug ?
Merci.
--
Cordialement,
Ze Titi
Tout pour réussir avec Access :
http://www.mpfa.info
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous !
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette requette :
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message d'erreur : "Type de données incompatible dans l'expression du critère" Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance) Ou est le bug ?
Merci.
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
dadpub
Salut,
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous ! Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher : SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette requette :
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message d'erreur : "Type de données incompatible dans l'expression du critère" Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance) Ou est le bug ?
Merci.
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
Salut,
et avec :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous !
Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec
diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher :
SELECT TOP 1 TContact.Contact, TContact.DDN
FROM TContact
WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now()))
AND ((Day([DDN]))>Day(Date())))
ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très
généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette
requette :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message
d'erreur :
"Type de données incompatible dans l'expression du critère"
Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance)
Ou est le bug ?
Merci.
--
Cordialement,
Ze Titi
Tout pour réussir avec Access :
http://www.mpfa.info
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous ! Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher : SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette requette :
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message d'erreur : "Type de données incompatible dans l'expression du critère" Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance) Ou est le bug ?
Merci.
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
ze Titi
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date())) ORDER BY TContact.DDN
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très généreusement gratifié du message suivant:
Salut,
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous ! Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher : SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette requette :
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message d'erreur : "Type de données incompatible dans l'expression du critère" Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance) Ou est le bug ?
Merci.
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()))
ORDER BY TContact.DDN
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très
généreusement gratifié du message suivant:
Salut,
et avec :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous !
Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec
diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher :
SELECT TOP 1 TContact.Contact, TContact.DDN
FROM TContact
WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now()))
AND ((Day([DDN]))>Day(Date())))
ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très
généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette
requette :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message
d'erreur :
"Type de données incompatible dans l'expression du critère"
Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance)
Ou est le bug ?
Merci.
-- Cordialement,
Ze Titi
Tout pour réussir avec Access :
http://www.mpfa.info
--
Cordialement,
Ze Titi
Tout pour réussir avec Access :
http://www.mpfa.info
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date())) ORDER BY TContact.DDN
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très généreusement gratifié du message suivant:
Salut,
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous ! Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher : SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
En ce jour exceptionnel du mercredi 14/03/2007, tu nous as très généreusement gratifié du message suivant:
Bonjour,
Voulant trouver le prochain anniversaire parmi mes contacts, j'ai cette requette :
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()));
Sans le critere (where) ça marche, mais avec le critere j'ai ce message d'erreur : "Type de données incompatible dans l'expression du critère" Or il s'agit bien de donnees de Type Date ! (DDNÚte De Naissance) Ou est le bug ?
Merci.
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
Eric
Bonjour,
Je crois qu'il manquait juste à la proposition de ze Titi la clause de tri croissant : Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ?
Salut,
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous ! Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher : SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Je crois qu'il manquait juste à la proposition de ze Titi la clause de
tri croissant :
Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ?
Salut,
et avec :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous !
Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec
diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher :
SELECT TOP 1 TContact.Contact, TContact.DDN
FROM TContact
WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now()))
AND ((Day([DDN]))>Day(Date())))
ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Je crois qu'il manquait juste à la proposition de ze Titi la clause de tri croissant : Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ?
Salut,
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous ! Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher : SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Eric
Hello ze Titi,
Et oui, je pense qu'il te manquait la clause Order By ;-) Moi, j'ai proposé ta formule avec la fonction Date() car son Now() n'est pas utile puisqu'il ne travaille pas sur l'instant présent. Question de goût certainement ;-)
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date())) ORDER BY TContact.DDN
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Hello ze Titi,
Et oui, je pense qu'il te manquait la clause Order By ;-)
Moi, j'ai proposé ta formule avec la fonction Date() car son Now() n'est
pas utile puisqu'il ne travaille pas sur l'instant présent. Question de
goût certainement ;-)
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()))
ORDER BY TContact.DDN
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Et oui, je pense qu'il te manquait la clause Order By ;-) Moi, j'ai proposé ta formule avec la fonction Date() car son Now() n'est pas utile puisqu'il ne travaille pas sur l'instant présent. Question de goût certainement ;-)
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date())) ORDER BY TContact.DDN
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
ze Titi
Hello Eric !
J'ai ajouté la clause mais sur la date de naissance... Le résultat est le même mais je soupçonne que ça soit un peu plus rapide de cette façon. Mais je peux me tromper, ça ne serait pas la première fois...
En ce jour mémorable du mercredi 14/03/2007, tu as entrepris la lourde tâche de taper sur ton clavier :
Bonjour,
Je crois qu'il manquait juste à la proposition de ze Titi la clause de tri croissant : Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ?
Salut,
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous ! Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher : SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
Hello Eric !
J'ai ajouté la clause mais sur la date de naissance... Le résultat est
le même mais je soupçonne que ça soit un peu plus rapide de cette
façon. Mais je peux me tromper, ça ne serait pas la première fois...
En ce jour mémorable du mercredi 14/03/2007, tu as entrepris la lourde
tâche de taper sur ton clavier :
Bonjour,
Je crois qu'il manquait juste à la proposition de ze Titi la clause de tri
croissant :
Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ?
Salut,
et avec :
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous !
Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec
diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher :
SELECT TOP 1 TContact.Contact, TContact.DDN
FROM TContact
WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now()))
AND ((Day([DDN]))>Day(Date())))
ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
--
Cordialement,
Ze Titi
Tout pour réussir avec Access :
http://www.mpfa.info
J'ai ajouté la clause mais sur la date de naissance... Le résultat est le même mais je soupçonne que ça soit un peu plus rapide de cette façon. Mais je peux me tromper, ça ne serait pas la première fois...
En ce jour mémorable du mercredi 14/03/2007, tu as entrepris la lourde tâche de taper sur ton clavier :
Bonjour,
Je crois qu'il manquait juste à la proposition de ze Titi la clause de tri croissant : Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ?
Salut,
et avec : SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Date()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Date()),Month([DDN]),Day([DDN])))>Date()));
Dis-nous ! Non !
Ok, y'a plus le message d'erreur, mais le résultat est faux (à tester avec diverses dates)
Par contre j'ai trouvé ceci et ça a l'air de marcher : SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
@ +
-- Cordialement, Ze Titi
Tout pour réussir avec Access : http://www.mpfa.info
Eric
re,
Certainement car lui faire calculer par 2 fois la date n'est pas nécessaire, mais j'ai réagi surtout à la formulation de son critère que je ne comprenais pas. Aussi dans la précipitation, je n'ai pas regardé les champs, juste la fonction DateSerial() que j'ai copiée-collée.
+1 pour toi ;-) A charge de revanche !
Hello Eric !
J'ai ajouté la clause mais sur la date de naissance... Le résultat est le même mais je soupçonne que ça soit un peu plus rapide de cette façon. Mais je peux me tromper, ça ne serait pas la première fois...
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
re,
Certainement car lui faire calculer par 2 fois la date n'est pas
nécessaire, mais j'ai réagi surtout à la formulation de son critère que
je ne comprenais pas. Aussi dans la précipitation, je n'ai pas regardé
les champs, juste la fonction DateSerial() que j'ai copiée-collée.
+1 pour toi ;-)
A charge de revanche !
Hello Eric !
J'ai ajouté la clause mais sur la date de naissance... Le résultat est
le même mais je soupçonne que ça soit un peu plus rapide de cette façon.
Mais je peux me tromper, ça ne serait pas la première fois...
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Certainement car lui faire calculer par 2 fois la date n'est pas nécessaire, mais j'ai réagi surtout à la formulation de son critère que je ne comprenais pas. Aussi dans la précipitation, je n'ai pas regardé les champs, juste la fonction DateSerial() que j'ai copiée-collée.
+1 pour toi ;-) A charge de revanche !
Hello Eric !
J'ai ajouté la clause mais sur la date de naissance... Le résultat est le même mais je soupçonne que ça soit un peu plus rapide de cette façon. Mais je peux me tromper, ça ne serait pas la première fois...
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
dadpub
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date())) ORDER BY TContact.DDN
Non, pas mieux !....
SELECT TOP 1 TContact.Contact, TContact.DDN,
DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire
FROM TContact
WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date()))
ORDER BY TContact.DDN
SELECT TOP 1 TContact.Contact, TContact.DDN, DateSerial(Year(Now()),Month([DDN]),Day([DDN])) AS Anniversaire FROM TContact WHERE ((DateSerial(Year(Now()),Month([DDN]),Day([DDN])))>Date())) ORDER BY TContact.DDN
Non, pas mieux !....
dadpub
"Eric" a écrit dans le message de news: %
Bonjour,
Je crois qu'il manquait juste à la proposition de ze Titi la clause de tri croissant : Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ? Ben non ! pas mieux ...
Pour l'instant y'a que ça qui marche :
SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
"Eric" <f_framZZ@hotmail.com> a écrit dans le message de news:
%23pkDuWkZHHA.4684@TK2MSFTNGP05.phx.gbl...
Bonjour,
Je crois qu'il manquait juste à la proposition de ze Titi la clause de tri
croissant :
Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ?
Ben non ! pas mieux ...
Pour l'instant y'a que ça qui marche :
SELECT TOP 1 TContact.Contact, TContact.DDN
FROM TContact
WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now()))
AND ((Day([DDN]))>Day(Date())))
ORDER BY Month([DDN]), Day([DDN]);
Je crois qu'il manquait juste à la proposition de ze Titi la clause de tri croissant : Order By DateSerial(Year(Date()),Month([DDN]),Day([DDN]))
non ? Ben non ! pas mieux ...
Pour l'instant y'a que ça qui marche :
SELECT TOP 1 TContact.Contact, TContact.DDN FROM TContact WHERE (((Month([DDN]))>Month(Now()+7))) OR (((Month([DDN]))=Month(Now())) AND ((Day([DDN]))>Day(Date()))) ORDER BY Month([DDN]), Day([DDN]);
Le seul problème est le chiffre après Now() + ...
Eric
re,
Bizarre !!! Ton champ DDN est bien de type Date ? format abrégé par exemple ? Je viens de tester sur 200 dates et j'ai pas de problème. 2 dates sortent pour le 15/03 parmi les 200.
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
re,
Bizarre !!!
Ton champ DDN est bien de type Date ? format abrégé par exemple ?
Je viens de tester sur 200 dates et j'ai pas de problème. 2 dates
sortent pour le 15/03 parmi les 200.
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bizarre !!! Ton champ DDN est bien de type Date ? format abrégé par exemple ? Je viens de tester sur 200 dates et j'ai pas de problème. 2 dates sortent pour le 15/03 parmi les 200.
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr