Calculer automatiquement le premier jour de chaque semaine
10 réponses
pyfux
Bonjour,
J'ai besoin de calculer pour un année, les dates des premiers jour de chaque
semaine.
Pour l'année 2008 et la semaine 01 c'est le 01/01/2008
Pour l'année 2008 et la semaine 02 c'est le 07/01/2008
Pour l'année 2008 et la semaine 03 c'est le 14/01/2008
Pour l'année 2008 et la semaine 04 c'est le 21/01/2008
Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais:
Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008
et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Bruno Wrk
pyfux a utilisé son clavier pour écrire :
Bonjour,
J'ai besoin de calculer pour un année, les dates des premiers jour de chaque semaine. Pour l'année 2008 et la semaine 01 c'est le 01/01/2008 Pour l'année 2008 et la semaine 02 c'est le 07/01/2008 Pour l'année 2008 et la semaine 03 c'est le 14/01/2008 Pour l'année 2008 et la semaine 04 c'est le 21/01/2008 Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais: Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008 et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Help PYFUX
Bonjour,
Bizarre
------------------------------------- dTest est une Date="20080101" i est un entier POUR i=1 A 25 dTest..Jour+=7 Trace(dTest) FIN -------------------------------------
Fonctionne très bien.
pyfux a utilisé son clavier pour écrire :
Bonjour,
J'ai besoin de calculer pour un année, les dates des premiers jour de chaque
semaine.
Pour l'année 2008 et la semaine 01 c'est le 01/01/2008
Pour l'année 2008 et la semaine 02 c'est le 07/01/2008
Pour l'année 2008 et la semaine 03 c'est le 14/01/2008
Pour l'année 2008 et la semaine 04 c'est le 21/01/2008
Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais:
Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008
et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Help
PYFUX
Bonjour,
Bizarre
-------------------------------------
dTest est une Date="20080101"
i est un entier
POUR i=1 A 25
dTest..Jour+=7
Trace(dTest)
FIN
-------------------------------------
J'ai besoin de calculer pour un année, les dates des premiers jour de chaque semaine. Pour l'année 2008 et la semaine 01 c'est le 01/01/2008 Pour l'année 2008 et la semaine 02 c'est le 07/01/2008 Pour l'année 2008 et la semaine 03 c'est le 14/01/2008 Pour l'année 2008 et la semaine 04 c'est le 21/01/2008 Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais: Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008 et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Help PYFUX
Bonjour,
Bizarre
------------------------------------- dTest est une Date="20080101" i est un entier POUR i=1 A 25 dTest..Jour+=7 Trace(dTest) FIN -------------------------------------
Fonctionne très bien.
pyfux
La solution est simple..désolé!
dDATES=EntierVersDate(DateVersEntier(dDATES)+7)
"pyfux" a écrit dans le message de news: 48806ac4$0$12665$
Bonjour,
J'ai besoin de calculer pour un année, les dates des premiers jour de chaque semaine. Pour l'année 2008 et la semaine 01 c'est le 01/01/2008 Pour l'année 2008 et la semaine 02 c'est le 07/01/2008 Pour l'année 2008 et la semaine 03 c'est le 14/01/2008 Pour l'année 2008 et la semaine 04 c'est le 21/01/2008 Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais: Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008 et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Help PYFUX
La solution est simple..désolé!
dDATES=EntierVersDate(DateVersEntier(dDATES)+7)
"pyfux" <pyfux@free.fr> a écrit dans le message de news:
48806ac4$0$12665$426a74cc@news.free.fr...
Bonjour,
J'ai besoin de calculer pour un année, les dates des premiers jour de
chaque semaine.
Pour l'année 2008 et la semaine 01 c'est le 01/01/2008
Pour l'année 2008 et la semaine 02 c'est le 07/01/2008
Pour l'année 2008 et la semaine 03 c'est le 14/01/2008
Pour l'année 2008 et la semaine 04 c'est le 21/01/2008
Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais:
Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008
et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
"pyfux" a écrit dans le message de news: 48806ac4$0$12665$
Bonjour,
J'ai besoin de calculer pour un année, les dates des premiers jour de chaque semaine. Pour l'année 2008 et la semaine 01 c'est le 01/01/2008 Pour l'année 2008 et la semaine 02 c'est le 07/01/2008 Pour l'année 2008 et la semaine 03 c'est le 14/01/2008 Pour l'année 2008 et la semaine 04 c'est le 21/01/2008 Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais: Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008 et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Help PYFUX
pyfux
Merci
"Bruno Wrk" a écrit dans le message de news:
pyfux a utilisé son clavier pour écrire :
Bonjour,
J'ai besoin de calculer pour un année, les dates des premiers jour de chaque semaine. Pour l'année 2008 et la semaine 01 c'est le 01/01/2008 Pour l'année 2008 et la semaine 02 c'est le 07/01/2008 Pour l'année 2008 et la semaine 03 c'est le 14/01/2008 Pour l'année 2008 et la semaine 04 c'est le 21/01/2008 Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais: Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008 et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Help PYFUX
Bonjour,
Bizarre
------------------------------------- dTest est une Date="20080101" i est un entier POUR i=1 A 25 dTest..Jour+=7 Trace(dTest) FIN -------------------------------------
Fonctionne très bien.
Merci
"Bruno Wrk" <administrator@huh.com> a écrit dans le message de news:
mn.92d87d87648d9dfe.85589@huh.com...
pyfux a utilisé son clavier pour écrire :
Bonjour,
J'ai besoin de calculer pour un année, les dates des premiers jour de
chaque semaine.
Pour l'année 2008 et la semaine 01 c'est le 01/01/2008
Pour l'année 2008 et la semaine 02 c'est le 07/01/2008
Pour l'année 2008 et la semaine 03 c'est le 14/01/2008
Pour l'année 2008 et la semaine 04 c'est le 21/01/2008
Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais:
Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008
et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Help
PYFUX
Bonjour,
Bizarre
-------------------------------------
dTest est une Date="20080101"
i est un entier
POUR i=1 A 25
dTest..Jour+=7
Trace(dTest)
FIN
-------------------------------------
J'ai besoin de calculer pour un année, les dates des premiers jour de chaque semaine. Pour l'année 2008 et la semaine 01 c'est le 01/01/2008 Pour l'année 2008 et la semaine 02 c'est le 07/01/2008 Pour l'année 2008 et la semaine 03 c'est le 14/01/2008 Pour l'année 2008 et la semaine 04 c'est le 21/01/2008 Pour l'année 2008 et la semaine 05 c'est le 28/01/2008
jusque là c'est plutôt facile, non ?
mais: Pour l'année 2008 et la semaine 06 c'est le 4/02/2008
La piste de ma solution c'est de partir du 01/01/2008 et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Help PYFUX
Bonjour,
Bizarre
------------------------------------- dTest est une Date="20080101" i est un entier POUR i=1 A 25 dTest..Jour+=7 Trace(dTest) FIN -------------------------------------
Fonctionne très bien.
Eric Laurent
Bizarre en effet car chez moi, le code suivant fonctionne dDhjour est une Date="20080101" POUR i=1 A 20 dDhjour..Jour+=7 Trace (dDhjour) FIN
dDate..JourÝate..Jour + 7 Erreur, voir notes concernant "Jour". Un exemple le cite comme une chose à ne pas faire.
Il faut avouer que c'est piégieux et pas très logique...
Dans le même genre, j'ai perdu un peu de temps (ya pas de message d'erreur là...) :
mValeur est un monétaire mvaleur = 42.9999999 trace(mValeur) //-> donne 43
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Daireaux Jean-Baptiste
Romain PETIT a écrit :
Bruno Wrk a exprimé avec précision :
dDate..JourÝate..Jour + 7 Erreur, voir notes concernant "Jour". Un exemple le cite comme une chose à ne pas faire.
Il faut avouer que c'est piégieux et pas très logique...
Dans le même genre, j'ai perdu un peu de temps (ya pas de message d'erreur là...) :
mValeur est un monétaire mvaleur = 42.9999999 trace(mValeur) //-> donne 43
Moi je fait :
m est un monétaire
mB.999999 trace(m) //-> affiche 42.999999
par contre
mB.9999999 trace(m) //-> affiche 43
un monétaire n'a que 6 décimale donc '42.999999' peut être considéré comme un monétaire mais '42.9999999' est lui un réel si tu l'affecte a un monétaire il y a exécution implicite de arrondi(42.9999999,6)C
voila... J.B.D.
Romain PETIT a écrit :
Bruno Wrk a exprimé avec précision :
dDate..JourÝate..Jour + 7
Erreur, voir notes concernant "Jour".
Un exemple le cite comme une chose à ne pas faire.
Il faut avouer que c'est piégieux et pas très logique...
Dans le même genre, j'ai perdu un peu de temps (ya pas de message
d'erreur là...) :
mValeur est un monétaire
mvaleur = 42.9999999
trace(mValeur) //-> donne 43
Moi je fait :
m est un monétaire
mB.999999
trace(m) //-> affiche 42.999999
par contre
mB.9999999
trace(m) //-> affiche 43
un monétaire n'a que 6 décimale donc '42.999999' peut être considéré
comme un monétaire mais '42.9999999' est lui un réel si tu l'affecte a
un monétaire il y a exécution implicite de arrondi(42.9999999,6)C
dDate..JourÝate..Jour + 7 Erreur, voir notes concernant "Jour". Un exemple le cite comme une chose à ne pas faire.
Il faut avouer que c'est piégieux et pas très logique...
Dans le même genre, j'ai perdu un peu de temps (ya pas de message d'erreur là...) :
mValeur est un monétaire mvaleur = 42.9999999 trace(mValeur) //-> donne 43
Moi je fait :
m est un monétaire
mB.999999 trace(m) //-> affiche 42.999999
par contre
mB.9999999 trace(m) //-> affiche 43
un monétaire n'a que 6 décimale donc '42.999999' peut être considéré comme un monétaire mais '42.9999999' est lui un réel si tu l'affecte a un monétaire il y a exécution implicite de arrondi(42.9999999,6)C
voila... J.B.D.
Romain PETIT
Daireaux Jean-Baptiste avait soumis l'idée :
un monétaire n'a que 6 décimale donc '42.999999' peut être considéré comme un monétaire mais '42.9999999' est lui un réel si tu l'affecte a un monétaire il y a exécution implicite de arrondi(42.9999999,6)C
Oui, je sais, c'est pour ça que je dit que c'est également piégieux et que ça m'a fait perdre un peu de temps... J'aurais préféré que WD m'insulte avec un beau mesage d'erreur de cast que de laisser passer ça...
A+
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Daireaux Jean-Baptiste avait soumis l'idée :
un monétaire n'a que 6 décimale donc '42.999999' peut être considéré comme un
monétaire mais '42.9999999' est lui un réel si tu l'affecte a un monétaire il
y a exécution implicite de arrondi(42.9999999,6)C
Oui, je sais, c'est pour ça que je dit que c'est également piégieux et
que ça m'a fait perdre un peu de temps...
J'aurais préféré que WD m'insulte avec un beau mesage d'erreur de cast
que de laisser passer ça...
A+
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
un monétaire n'a que 6 décimale donc '42.999999' peut être considéré comme un monétaire mais '42.9999999' est lui un réel si tu l'affecte a un monétaire il y a exécution implicite de arrondi(42.9999999,6)C
Oui, je sais, c'est pour ça que je dit que c'est également piégieux et que ça m'a fait perdre un peu de temps... J'aurais préféré que WD m'insulte avec un beau mesage d'erreur de cast que de laisser passer ça...
A+
-- Romain PETIT http://cerbermail.com/?O16kfXOFcq (cliquez sur le lien ci-dessus pour me contacter en privé)
Albert
Bonjour
La piste de ma solution c'est de partir du 01/01/2008 et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Normal
Pour incémenter le mois < dDate..mois += 1 >
Maintenant en partant du n° de semaine renvoyé par la fonction
<Résultat> = NuméroDeSemaine(<Date>)
il est assez simple de déterminer la date du lundi de la semaine concernée
Cordialement
Albert
Bonjour
La piste de ma solution c'est de partir du 01/01/2008
et de faire date..jour += 7
mais ça ne marche pas, l'opérateur + n'incrémente pas le mois !!!
Normal
Pour incémenter le mois < dDate..mois += 1 >
Maintenant en partant du n° de semaine renvoyé par la fonction
<Résultat> = NuméroDeSemaine(<Date>)
il est assez simple de déterminer la date du lundi de la semaine
concernée