Tous les vendredis, Ned produit un rapport qui est distribué dans son entreprise.

Il souhaite que l’en-tête du rapport contienne toujours la date du lundi précédent. Il se demande comment il peut lui faire afficher dynamiquement la date du lundi de la semaine en cours.

Si Ned produisait le rapport dans Excel, calculer la date du lundi dernier serait très facile. Ce n’est pas Excel, cependant; le rapport est dans Word. La tâche est donc loin d’être aussi simple. Il existe cependant quelques approches que vous pouvez adopter.

Une approche consiste à créer le document Word pour votre rapport lundi. Vous n’avez rien à mettre dans le rapport; créez simplement le document qui sera utilisé à la fin de la semaine pour créer le rapport.

Vous pouvez ensuite inclure un champ dans l’en-tête qui insère la date à laquelle le document a été créé (le champ CreateDate). Il reflétera toujours le lundi où le document a été créé.

Si cela ne correspond pas à vos besoins (vous ne pouvez peut-être pas, pour une raison quelconque, créer le document le lundi), vous pouvez essayer de créer une date à l’aide d’un champ imbriqué. Voici une possibilité:

{ date \@ "MMMM { ={date \@"dd"} -5} yyyy"}

N’oubliez pas que chaque paire d’accolades de champ doit être saisie à l’aide de Ctrl + F9. Le champ composé fonctionnera pour plusieurs dates, mais rencontrera des problèmes si le vendredi sur lequel vous calculez le champ se situe dans les cinq premiers jours du mois. (Le calcul dans le champ interne renverra une valeur négative ces jours-là.) Il n’y a pas de moyen facile de contourner ce problème.

L’approche la plus simple consiste à utiliser une macro pour insérer la date. Les macros peuvent faire des calculs de date assez facilement. Voici un exemple d’une petite macro rapide qui peut calculer la date correcte:

Sub MondayBeforeToday()

Subtract = Choose(Weekday(Date), 6, 7, 1, 2, 3, 4, 5)

DateFormat = "dddd mm/dd/yyyy"

Selection.InsertBefore Format((Date - Subtract), DateFormat)

End Sub

Tout ce que vous avez à faire est de positionner le point d’insertion à l’endroit où vous voulez la date, puis d’exécuter la macro. Il peut être exécuté n’importe quel jour de la semaine et insérera toujours la date du lundi précédent.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites WordTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / wordribbon-WordTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

WordTips est votre source pour une formation Microsoft Word rentable.

(Microsoft Word est le logiciel de traitement de texte le plus populaire au monde.) Cette astuce (9800) s’applique à Microsoft Word 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban de Word (Word 2007 et plus tard) ici:

lien: / wordribbon-Mondays_Date_on_Fridays_Report [La date du lundi sur le rapport de vendredi].