OVH Cloud OVH Cloud

date

7 réponses
Avatar
Monnerie
bonjour,

une petite question : je voudrais que ma date soit celle de la veille

ex date-1 mais je n'arrive pas à mettre la bonne formule dans le champ

Merci d'avance

7 réponses

Avatar
Tisane
Bonjour Monnerie,

une petite question : je voudrais que ma date soit celle de la veille
ex date-1 mais je n'arrive pas à mettre la bonne formule dans le champ


Il faut dire que c'est moins facile que dans Excel ;-)
La formule suivante donne J-1 :
{={date @ d}-1}
Pour la date entière :
{date @ "{={date @ d}-1} MMMM yyyy"}

A personnaliser. Par exemple, pour le 7/12/2006 :
{date @ "{={date @ d}-1}/MM/yyyy"}
Attention aux majuscules sur le mois.

Rappel : les {} ne doivent pas être tapées mais obtenues avec <Ctrl><F9>
Les codes de champs sont affichés/masqués avec <Alt><F9>
La mise à jour du champ se fait avec <F9> (ou lors de l'aperçu/impression)

--
Tisane

Avatar
Tisane
une petite question : je voudrais que ma date soit celle de la veille
ex date-1 mais je n'arrive pas à mettre la bonne formule dans le
champ
La formule suivante donne J-1 :

{={date @ d}-1}
[...]


Précision : ma réponse précédente ne vaut que dans un certain contexte qui
n'est sans doute pas le même que le tien et que j'ai extrait d'une formule
conditionnelle.
Ces calculs ne respectent pas le calendrier.
Si on est le 1er du mois, la date sera 0...
etc.

Word n'est pas bon dans le calcul des dates.
Tu auras aussi vite faite d'insérer une cellule Excel ;-)

--
Tisane


Avatar
Monnerie
Merci beaucoup
"Tisane" a écrit dans le message de news:

une petite question : je voudrais que ma date soit celle de la veille
ex date-1 mais je n'arrive pas à mettre la bonne formule dans le
champ
La formule suivante donne J-1 :

{={date @ d}-1}
[...]


Précision : ma réponse précédente ne vaut que dans un certain contexte qui
n'est sans doute pas le même que le tien et que j'ai extrait d'une formule
conditionnelle.
Ces calculs ne respectent pas le calendrier.
Si on est le 1er du mois, la date sera 0...
etc.

Word n'est pas bon dans le calcul des dates.
Tu auras aussi vite faite d'insérer une cellule Excel ;-)

--
Tisane




Avatar
Jean-Guy Marcil
Tisane was telling us:
Tisane nous racontait que :

une petite question : je voudrais que ma date soit celle de la
veille ex date-1 mais je n'arrive pas à mettre la bonne formule
dans le champ
La formule suivante donne J-1 :

{={date @ d}-1}
[...]


Précision : ma réponse précédente ne vaut que dans un certain
contexte qui n'est sans doute pas le même que le tien et que j'ai
extrait d'une formule conditionnelle.
Ces calculs ne respectent pas le calendrier.
Si on est le 1er du mois, la date sera 0...
etc.

Word n'est pas bon dans le calcul des dates.
Tu auras aussi vite faite d'insérer une cellule Excel ;-)


En effet pour les deux points!
Pour une formule qui fonctionne peut importe la date actuelle, ça prend
quelque chose comme:

{ QUOTE "{ SET Delay "14" }{ SET "DaysInMonth" { IF { DATE @ "MM" } <> 2
{ = round(30.575*{ DATE @ "MM" },0)-ROUND(30.575*{ = { DATE @
"MM" } -1 },0) }{ IF { = MOD({ DATE @"yy" }, 4 ) } > 0 "28" "29" } } }{ SET
"NextMonth" { IF { DATE @ "MM" } = 12 "1/97" "{ = { DATE @ "MM" } +
1 }/97 } }{ IF { = { REF Delay } + { DATE @ "dd" } } <= { DaysInMonth }{
DATE @ "MMMM { = { REF Delay} + { DATE @ "dd" } }, yyyy"}{ QUOTE {
NextMonth @ "MMMM" } { = { REF Delay } + { DATE @ "dd" } - {
DaysInMonth } }, { IF { } DATE @ "MM" } <> 12 { DATE @ "yyyy" }{ DATE @
"{ = 1 + { DATE @ "yyyy" } # "xxxx" }" } } } }" }

où on remplace le 14 dans { SET Delay "14" } par le délai qu'on veut (-1
dans ce cas).

Merci à macropod.

Quelqu'un dans les groupes anglophones donne un lien vers un document Word
qui contient le champs déjà monté (Mais qui utilise CREATEDATE au lieu de
DATE):
La page: http://addbalance.com/word/datefields2.htm
Le lien pour télécharger:
http://addbalance.com/word/download.htm#calculateddatefield
Comme c'est un champ difficile à reconstruire avec CTRL-F9, le lien peut
être utile!

--

Salut!
_______________________________________
Jean-Guy Marcil - Word MVP

Word MVP site: http://www.word.mvps.org



Avatar
Tisane
Bonjour Jean-Guy,

Quelqu'un dans les groupes anglophones donne un lien vers un document Word
qui contient le champs déjà monté (Mais qui utilise CREATEDATE au lieu de
DATE):
La page: http://addbalance.com/word/datefields2.htm
[...]


Pour la formule que tu as donnée (ci-dessous), tu es bien courageux... je
n'ai pas osé ;-))
Je te dirai que j'ai extrait la (mauvaise) fonction d'une formule pas triste
non plus.

Bref, dans ce cas précis, j'aime autant une macro associée au document.
Microsoft en donne quelques exemples :
"WD2000 : comment effectuer des calculs avec des dates et des heures"
http://support.microsoft.com/kb/212684/fr

Mais ce n'est que mon avis...

--
Tisane

"Jean-Guy Marcil" a écrit dans le message de news:
%

une petite question : je voudrais que ma date soit celle de la
veille ex date-1 mais je n'arrive pas à mettre la bonne formule
dans le champ
La formule suivante donne J-1 :

{={date @ d}-1}
[...]


Précision : ma réponse précédente ne vaut que dans un certain
contexte qui n'est sans doute pas le même que le tien et que j'ai
extrait d'une formule conditionnelle.
Ces calculs ne respectent pas le calendrier.
Si on est le 1er du mois, la date sera 0...
etc.

Word n'est pas bon dans le calcul des dates.
Tu auras aussi vite faite d'insérer une cellule Excel ;-)


En effet pour les deux points!
Pour une formule qui fonctionne peut importe la date actuelle, ça prend
quelque chose comme:

{ QUOTE "{ SET Delay "14" }{ SET "DaysInMonth" { IF { DATE @ "MM" } <> 2
{ = round(30.575*{ DATE @ "MM" },0)-ROUND(30.575*{ = { DATE @
"MM" } -1 },0) }{ IF { = MOD({ DATE @"yy" }, 4 ) } > 0 "28" "29" } } }{
SET "NextMonth" { IF { DATE @ "MM" } = 12 "1/97" "{ = { DATE @ "MM" } +
1 }/97 } }{ IF { = { REF Delay } + { DATE @ "dd" } } <= {
DaysInMonth }{ DATE @ "MMMM { = { REF Delay} + { DATE @ "dd" } },
yyyy"}{ QUOTE { NextMonth @ "MMMM" } { = { REF Delay } + { DATE @
"dd" } - { DaysInMonth } }, { IF { } DATE @ "MM" } <> 12 { DATE @
"yyyy" }{ DATE @ "{ = 1 + { DATE @ "yyyy" } # "xxxx" }" } } } }" }

où on remplace le 14 dans { SET Delay "14" } par le délai qu'on veut (-1
dans ce cas).

Merci à macropod.


--

Salut!
_______________________________________
Jean-Guy Marcil - Word MVP

Word MVP site: http://www.word.mvps.org






Avatar
Jean-Guy Marcil
Tisane was telling us:
Tisane nous racontait que :

Bonjour Jean-Guy,

Quelqu'un dans les groupes anglophones donne un lien vers un
document Word qui contient le champs déjà monté (Mais qui utilise
CREATEDATE au lieu de DATE):
La page: http://addbalance.com/word/datefields2.htm
[...]


Pour la formule que tu as donnée (ci-dessous), tu es bien
courageux... je n'ai pas osé ;-))
Je te dirai que j'ai extrait la (mauvaise) fonction d'une formule pas
triste non plus.

Bref, dans ce cas précis, j'aime autant une macro associée au
document. Microsoft en donne quelques exemples :
"WD2000 : comment effectuer des calculs avec des dates et des heures"
http://support.microsoft.com/kb/212684/fr

Mais ce n'est que mon avis...


C'est vrai que c'est plus facile avec une macro... Mais parfois, surtout
dans des cas de distribution de documents, comme on ne connaît pas le niveau
de sécurité des destinataires, on est obligé de passer par un champ...

--

Salut!
_______________________________________
Jean-Guy Marcil - Word MVP

Word MVP site: http://www.word.mvps.org


Avatar
Geo

C'est vrai que c'est plus facile avec une macro... Mais parfois, surtout dans des cas
de distribution de documents, comme on ne connaît pas le niveau de sécurité des
destinataires, on est obligé de passer par un champ...


... qui de plus a l'avantage de placer le résultat à l'endroit
souhaité.
Vivement les champs programmables.

--
A+