Bonjour,
Je n'arrive pas à faire fonctionner correctement une comparaison de dates
dans une instruction Dcount.
***
Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " &
"[Date de vente] <=" & "#" & Me![Datfin] & "#"
Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine)
***
Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal à
0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque
part un schmilblick que je ne devine pas. Je pécise que mes dates sont toutes
de format abrégé.
Merci d'avance de vos lumières avisées et généreuses.
Roland
PS Je peux envoyer une réduction de ma base si besoin est
Chaine = Chaine & " [Date de vente] BETWEEN #" & format$(Me![Datdebut],"mm/dd/yy") & "# AND #" & format$(Me![Datfin],"mm/dd/yy") & "#"
"lecrol" a écrit dans le message de news:
Bonjour, Je n'arrive pas à faire fonctionner correctement une comparaison de dates dans une instruction Dcount. *** Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " & "[Date de vente] <=" & "#" & Me![Datfin] & "#" Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine) *** Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal à 0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque part un schmilblick que je ne devine pas. Je pécise que mes dates sont toutes de format abrégé. Merci d'avance de vos lumières avisées et généreuses. Roland PS Je peux envoyer une réduction de ma base si besoin est
J'ai pour règle de formater la date :
Chaine = Chaine & " [Date de vente] BETWEEN #" &
format$(Me![Datdebut],"mm/dd/yy") & "# AND #" &
format$(Me![Datfin],"mm/dd/yy") & "#"
"lecrol" <lecrol@discussions.microsoft.com> a écrit dans le message de news:
4AB1FE90-0991-472D-892C-8E859915B1BB@microsoft.com...
Bonjour,
Je n'arrive pas à faire fonctionner correctement une comparaison de dates
dans une instruction Dcount.
***
Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " &
"[Date de vente] <=" & "#" & Me![Datfin] & "#"
Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine)
***
Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal
à
0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque
part un schmilblick que je ne devine pas. Je pécise que mes dates sont
toutes
de format abrégé.
Merci d'avance de vos lumières avisées et généreuses.
Roland
PS Je peux envoyer une réduction de ma base si besoin est
Chaine = Chaine & " [Date de vente] BETWEEN #" & format$(Me![Datdebut],"mm/dd/yy") & "# AND #" & format$(Me![Datfin],"mm/dd/yy") & "#"
"lecrol" a écrit dans le message de news:
Bonjour, Je n'arrive pas à faire fonctionner correctement une comparaison de dates dans une instruction Dcount. *** Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " & "[Date de vente] <=" & "#" & Me![Datfin] & "#" Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine) *** Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal à 0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque part un schmilblick que je ne devine pas. Je pécise que mes dates sont toutes de format abrégé. Merci d'avance de vos lumières avisées et généreuses. Roland PS Je peux envoyer une réduction de ma base si besoin est
Gloops
Bonjour,
CErnst a écrit, le 24/06/2008 12:22 :
J'ai pour règle de formater la date :
Chaine = Chaine & " [Date de vente] BETWEEN #" & format$(Me![Datdebut],"mm/dd/yy") & "# AND #" & format$(Me![Datfin],"mm/dd/yy") & "#"
Oui, sur une base française, ça doit bien aider.
Sur une base internationale, attention à se référer au bon format.
(mouais, je crois que j'ai inversé les syntaxes, c'est DateDeVente qui est dans la base et DatDebut dans un champ de saisie, j'ai fait comme si c'était l'inverse ; promis, si vraiment quelqu'un ne comprend pas dans les jours qui viennent, je le referai).
Ah, c'est très lourd, certes. Une fois que j'ai fait comme ça, je n'ai plus jamais entendu que les Tchèques avaient un contrôle de date qui fonctionnait à partir du 1 3 mais pas du 1er au 12, ou l'inverse.
En effet, si une date fournie n'existe pas, les deux premiers termes sont inversés (quel que soit l'avis de l'utilisateur sur la question, e t même si il n'en a pas) pour obtenir une nouvelle date qui existe.
Ce qui donne "fort logiquement" la suite de dates suivante :
05/01/2008 5 janvier 2008 05/02/2008 5 février 2008 05/03/2008 5 mars 2008 05/04/2008 5 avril 2008 05/05/2008 5 mai 2008 05/06/2008 5 juin 2008 05/07/2008 5 juillet 2008 05/08/2008 5 août 2008 05/09/2008 5 septembre 2008 05/10/2008 5 octobre 2008 05/11/2008 5 novembre 2008 05/12/2008 5 décembre 2008 05/13/2008 13 mai 2008 05/14/2008 14 mai 2008
et c'est pareil si l'expéditeur s'est exprimé en date au format angla is, et que ces dates allaient du premier au 14 mai.
Alors que DateSerial(2008, 5, 1) ne peut faire que premier mai 2008, quelle que soit la culture dans laquelle on l'exprime -tout au plus ça peut ne pas être la fête du travail dans un pays ou un autre, mais ce sera le premier jour du cinquième mois de l'année 2008, si tant est qu'on utilise le même calendrier (il y a des fonctions pour le support du calendrier grégorien, mais ça c'est une autre question).
Bonjour,
CErnst a écrit, le 24/06/2008 12:22 :
J'ai pour règle de formater la date :
Chaine = Chaine & " [Date de vente] BETWEEN #" &
format$(Me![Datdebut],"mm/dd/yy") & "# AND #" &
format$(Me![Datfin],"mm/dd/yy") & "#"
Oui, sur une base française, ça doit bien aider.
Sur une base internationale, attention à se référer au bon format.
(mouais, je crois que j'ai inversé les syntaxes, c'est DateDeVente qui
est dans la base et DatDebut dans un champ de saisie, j'ai fait comme si
c'était l'inverse ; promis, si vraiment quelqu'un ne comprend pas dans
les jours qui viennent, je le referai).
Ah, c'est très lourd, certes.
Une fois que j'ai fait comme ça, je n'ai plus jamais entendu que les
Tchèques avaient un contrôle de date qui fonctionnait à partir du 1 3
mais pas du 1er au 12, ou l'inverse.
En effet, si une date fournie n'existe pas, les deux premiers termes
sont inversés (quel que soit l'avis de l'utilisateur sur la question, e t
même si il n'en a pas) pour obtenir une nouvelle date qui existe.
Ce qui donne "fort logiquement" la suite de dates suivante :
05/01/2008 5 janvier 2008
05/02/2008 5 février 2008
05/03/2008 5 mars 2008
05/04/2008 5 avril 2008
05/05/2008 5 mai 2008
05/06/2008 5 juin 2008
05/07/2008 5 juillet 2008
05/08/2008 5 août 2008
05/09/2008 5 septembre 2008
05/10/2008 5 octobre 2008
05/11/2008 5 novembre 2008
05/12/2008 5 décembre 2008
05/13/2008 13 mai 2008
05/14/2008 14 mai 2008
et c'est pareil si l'expéditeur s'est exprimé en date au format angla is,
et que ces dates allaient du premier au 14 mai.
Alors que DateSerial(2008, 5, 1) ne peut faire que premier mai 2008,
quelle que soit la culture dans laquelle on l'exprime -tout au plus ça
peut ne pas être la fête du travail dans un pays ou un autre, mais ce
sera le premier jour du cinquième mois de l'année 2008, si tant est
qu'on utilise le même calendrier (il y a des fonctions pour le support
du calendrier grégorien, mais ça c'est une autre question).
(mouais, je crois que j'ai inversé les syntaxes, c'est DateDeVente qui est dans la base et DatDebut dans un champ de saisie, j'ai fait comme si c'était l'inverse ; promis, si vraiment quelqu'un ne comprend pas dans les jours qui viennent, je le referai).
Ah, c'est très lourd, certes. Une fois que j'ai fait comme ça, je n'ai plus jamais entendu que les Tchèques avaient un contrôle de date qui fonctionnait à partir du 1 3 mais pas du 1er au 12, ou l'inverse.
En effet, si une date fournie n'existe pas, les deux premiers termes sont inversés (quel que soit l'avis de l'utilisateur sur la question, e t même si il n'en a pas) pour obtenir une nouvelle date qui existe.
Ce qui donne "fort logiquement" la suite de dates suivante :
05/01/2008 5 janvier 2008 05/02/2008 5 février 2008 05/03/2008 5 mars 2008 05/04/2008 5 avril 2008 05/05/2008 5 mai 2008 05/06/2008 5 juin 2008 05/07/2008 5 juillet 2008 05/08/2008 5 août 2008 05/09/2008 5 septembre 2008 05/10/2008 5 octobre 2008 05/11/2008 5 novembre 2008 05/12/2008 5 décembre 2008 05/13/2008 13 mai 2008 05/14/2008 14 mai 2008
et c'est pareil si l'expéditeur s'est exprimé en date au format angla is, et que ces dates allaient du premier au 14 mai.
Alors que DateSerial(2008, 5, 1) ne peut faire que premier mai 2008, quelle que soit la culture dans laquelle on l'exprime -tout au plus ça peut ne pas être la fête du travail dans un pays ou un autre, mais ce sera le premier jour du cinquième mois de l'année 2008, si tant est qu'on utilise le même calendrier (il y a des fonctions pour le support du calendrier grégorien, mais ça c'est une autre question).
3stone
Salut Gloobs,
"Gloops"
CErnst a écrit, le 24/06/2008 12:22 : J'ai pour règle de formater la date :
Chaine = Chaine & " [Date de vente] BETWEEN #" & format$(Me![Datdebut],"mm/dd/yy") & "# AND #" & format$(Me![Datfin],"mm/dd/yy") & "#"
| Oui, sur une base française, ça doit bien aider. | | Sur une base internationale, attention à se référer au bon format.
Le *bon* format est le format US, il n'y en a pas d'autre ;-))
| J'ai fini par passer tout à la même moulinette ; | de mémoire :
Bien lourd et... inutile pour en venir à... une date US ;-) De plus, si tu attribues le tout à une variable Date, tu te retrouve exactement devant le même problème lors de la comparaison, car la date sera présentée au format défini dans les paramètres régionaux :-(
DateSerial() est parfait, mais pour créer une date valide au départ de variables ou champs différents...
Bien lourd et... inutile pour en venir à... une date US ;-)
De plus, si tu attribues le tout à une variable Date, tu te retrouve
exactement devant le même problème lors de la comparaison,
car la date sera présentée au format défini dans les paramètres
régionaux :-(
DateSerial() est parfait, mais pour créer une date valide au départ de variables
ou champs différents...
Bien lourd et... inutile pour en venir à... une date US ;-) De plus, si tu attribues le tout à une variable Date, tu te retrouve exactement devant le même problème lors de la comparaison, car la date sera présentée au format défini dans les paramètres régionaux :-(
DateSerial() est parfait, mais pour créer une date valide au départ de variables ou champs différents...
Youuupss ! Je m'excuse du retard à revenir sur ce forum, mais j'étais loin ! A présent, me v'la revenu. Je suis super content et impressionné de ces 5 réponses Mais le débutant que je suis s'en retrouve un peu... débordé ! Finalement, quelle syntaxe dois-je utiliser ? En attendnat votre verdict, voici ce que je peux vous dire pour expliciter un peu plus ma demande sur la tables "ventes", un champ "date de vente" format date abrégé sur le formulaire de saisie; les deux dates [datedebut] et [datfin] au même format La requete R_ventes croise la table "Ventes" et la table "stocks" sur le code article pour ajouter prix, libellé, etc.. Le tout consiste à filtrer les ventes sur une période donnée. A votre disposition pour toute autre précision nécessaire. Merci encore Roland
"lecrol" wrote: $$
Bonjour, Je n'arrive pas à faire fonctionner correctement une comparaison de dates dans une instruction Dcount. *** Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " & "[Date de vente] <=" & "#" & Me![Datfin] & "#" Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine) *** Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal à 0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque part un schmilblick que je ne devine pas. Je pécise que mes dates sont toutes de format abrégé. Merci d'avance de vos lumières avisées et généreuses. Roland PS Je peux envoyer une réduction de ma base si besoin est
Youuupss ! Je m'excuse du retard à revenir sur ce forum, mais j'étais loin !
A présent, me v'la revenu. Je suis super content et impressionné de ces 5
réponses Mais le débutant que je suis s'en retrouve un peu... débordé !
Finalement, quelle syntaxe dois-je utiliser ? En attendnat votre verdict,
voici ce que je peux vous dire pour expliciter un peu plus ma demande
sur la tables "ventes", un champ "date de vente" format date abrégé
sur le formulaire de saisie; les deux dates [datedebut] et [datfin] au même
format La requete R_ventes croise la table "Ventes" et la table "stocks" sur
le code article pour ajouter prix, libellé, etc..
Le tout consiste à filtrer les ventes sur une période donnée.
A votre disposition pour toute autre précision nécessaire.
Merci encore
Roland
"lecrol" wrote:
$$
Bonjour,
Je n'arrive pas à faire fonctionner correctement une comparaison de dates
dans une instruction Dcount.
***
Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " &
"[Date de vente] <=" & "#" & Me![Datfin] & "#"
Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine)
***
Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal à
0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque
part un schmilblick que je ne devine pas. Je pécise que mes dates sont toutes
de format abrégé.
Merci d'avance de vos lumières avisées et généreuses.
Roland
PS Je peux envoyer une réduction de ma base si besoin est
Youuupss ! Je m'excuse du retard à revenir sur ce forum, mais j'étais loin ! A présent, me v'la revenu. Je suis super content et impressionné de ces 5 réponses Mais le débutant que je suis s'en retrouve un peu... débordé ! Finalement, quelle syntaxe dois-je utiliser ? En attendnat votre verdict, voici ce que je peux vous dire pour expliciter un peu plus ma demande sur la tables "ventes", un champ "date de vente" format date abrégé sur le formulaire de saisie; les deux dates [datedebut] et [datfin] au même format La requete R_ventes croise la table "Ventes" et la table "stocks" sur le code article pour ajouter prix, libellé, etc.. Le tout consiste à filtrer les ventes sur une période donnée. A votre disposition pour toute autre précision nécessaire. Merci encore Roland
"lecrol" wrote: $$
Bonjour, Je n'arrive pas à faire fonctionner correctement une comparaison de dates dans une instruction Dcount. *** Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " & "[Date de vente] <=" & "#" & Me![Datfin] & "#" Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine) *** Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal à 0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque part un schmilblick que je ne devine pas. Je pécise que mes dates sont toutes de format abrégé. Merci d'avance de vos lumières avisées et généreuses. Roland PS Je peux envoyer une réduction de ma base si besoin est
lecrol
Hello !! Youppie !! J'ai essayé la syntaxe proposée par Cernst. Et ça MAAAAARCHE !!! Le seul "piti problèm" qui me reste est que cet ignare de access me fait une erreur si je lui dis "31/06/08" ! Quelle insolence ! Y'aurait il un moyen pour éviter ce piège des derniers jours du mois, 30 ou 31 ? Ne pourrait-on, par exemple, tapper "fin juin" (rires..) Merci encore et encore et ... félicitations Roland ------------------------------------------------------------
J'ai pour règle de formater la date :
Chaine = Chaine & " [Date de vente] BETWEEN #" & format$(Me![Datdebut],"mm/dd/yy") & "# AND #" & format$(Me![Datfin],"mm/dd/yy") & "#"
"lecrol" a écrit dans le message de news:
> Bonjour, > Je n'arrive pas à faire fonctionner correctement une comparaison de dates > dans une instruction Dcount. > *** > Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " & > "[Date de vente] <=" & "#" & Me![Datfin] & "#" > Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine) > *** > Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal > à > 0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque > part un schmilblick que je ne devine pas. Je pécise que mes dates sont > toutes > de format abrégé. > Merci d'avance de vos lumières avisées et généreuses. > Roland > PS Je peux envoyer une réduction de ma base si besoin est
Hello !! Youppie !! J'ai essayé la syntaxe proposée par Cernst. Et ça
MAAAAARCHE !!!
Le seul "piti problèm" qui me reste est que cet ignare de access me fait une
erreur si je lui dis "31/06/08" ! Quelle insolence ! Y'aurait il un moyen
pour éviter ce piège des derniers jours du mois, 30 ou 31 ? Ne pourrait-on,
par exemple, tapper "fin juin" (rires..)
Merci encore et encore et ... félicitations
Roland
------------------------------------------------------------
J'ai pour règle de formater la date :
Chaine = Chaine & " [Date de vente] BETWEEN #" &
format$(Me![Datdebut],"mm/dd/yy") & "# AND #" &
format$(Me![Datfin],"mm/dd/yy") & "#"
"lecrol" <lecrol@discussions.microsoft.com> a écrit dans le message de news:
4AB1FE90-0991-472D-892C-8E859915B1BB@microsoft.com...
> Bonjour,
> Je n'arrive pas à faire fonctionner correctement une comparaison de dates
> dans une instruction Dcount.
> ***
> Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " &
> "[Date de vente] <=" & "#" & Me![Datfin] & "#"
> Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine)
> ***
> Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal
> à
> 0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque
> part un schmilblick que je ne devine pas. Je pécise que mes dates sont
> toutes
> de format abrégé.
> Merci d'avance de vos lumières avisées et généreuses.
> Roland
> PS Je peux envoyer une réduction de ma base si besoin est
Hello !! Youppie !! J'ai essayé la syntaxe proposée par Cernst. Et ça MAAAAARCHE !!! Le seul "piti problèm" qui me reste est que cet ignare de access me fait une erreur si je lui dis "31/06/08" ! Quelle insolence ! Y'aurait il un moyen pour éviter ce piège des derniers jours du mois, 30 ou 31 ? Ne pourrait-on, par exemple, tapper "fin juin" (rires..) Merci encore et encore et ... félicitations Roland ------------------------------------------------------------
J'ai pour règle de formater la date :
Chaine = Chaine & " [Date de vente] BETWEEN #" & format$(Me![Datdebut],"mm/dd/yy") & "# AND #" & format$(Me![Datfin],"mm/dd/yy") & "#"
"lecrol" a écrit dans le message de news:
> Bonjour, > Je n'arrive pas à faire fonctionner correctement une comparaison de dates > dans une instruction Dcount. > *** > Chaine = Chaine & " [Date de vente] >=" & "#" & Me![Datdebut] & "# AND " & > "[Date de vente] <=" & "#" & Me![Datfin] & "#" > Nbrtotchoix = DCount("[NouvCode article]", "R_Ventes", Chaine) > *** > Je n'ai pas d'erreur de syntaxe mais un résultat parfois bon, parfois égal > à > 0 et d'autres fois, enfin, égal au nombre total de records! Il ya quelque > part un schmilblick que je ne devine pas. Je pécise que mes dates sont > toutes > de format abrégé. > Merci d'avance de vos lumières avisées et généreuses. > Roland > PS Je peux envoyer une réduction de ma base si besoin est