Comment connaître la longueur du plus long texte de la date du jour de l’année avec Word ?

Je travaillais hier matin avec un client sur son modèle de lettre Word.
Sur ce modèle de lettre que l’on veut décliner en français et en anglais, la date est positionnée grâce à un tabulateur, vers le bord droit de la page. On a naturellement écrit la date du jour, lundi 18 janvier 2016, pour avoir un visuel concret du modèle. “Pensez-vous que la date est positionnée suffisament en retrait et laisse assez d’espace pour accomoder le texte d’une date un peu plus longue ? – Ce serait embêtant que la date passe à la ligne…”. Ouf (!), question pertinente !

Dans le modèle en question, la date du jour est exprimée dans le format <jour> <numéro du jour> <mois> <année>. Autrement dit, pour le 19/01/2016, nous avons l’expression suivante de la date: mardi 19 janvier 2016.

Etant donné que nous sommes sur une police de caractères à espacement proportionnel (le caractère “i” ne prends pas la même place que le caractère “c”), comment savoir quel est l’espace maximal à réserver, ou autrement dit à quel distance de la marge de droite positionner notre tabulateur pour éviter le problème de retour à la ligne intempestif ?

Espace à réserver et tabulateur
Illustration – Espace à réserver et tabulateur (Les bulles sont en anglais, mais pointent les éléments en question)

Solution pour le français et anglais

Pour connaître la largeur de l’espace à reserver, préférablement en centimètres, il faut “simplement” calculer la largeur de toutes les dates de l’année exprimée dans le format souhaité (on pourrait aller jusqu’à 10 dans le futur si on pinaille) et retenir simplement la dernière des plus longues des expressions mesurées.

Pour découvrir cette valeur, pour les textes de date en français ou en anglais, vous pouvez téléchargez ce document word (archive zip à décompresser, utilisez par exemple 7zip), double-cliquez le et suivez les instructions affichées à son ouverture.
Télécharger et utilisez gratuitement le document sur devinfo.net: word_longest_day.zip

Remarque sur les documents avec macros

C’est un document Word avec une macro, autrement dit qui exécute un programme lorsque vous appuyez sur le bouton proposé. Je veille à ce que le code des documents VBA en provenance de devinfo.net (là où se trouve ce document) soit signé numériquement, ce qui garantit qu’il arrive chez vous sans modification malicieuse, mais vous devez autoriser explicitement l’exécution de ces macros à l’ouverture du document.
Lorsque Word vous propose une boîte de dialogue similaire à celle-ci, choisissez la dernière option (faire confiance à l’éditeur) et cliquez sur le bouton [OK] :

Dialogue signature numérique
Boîte de dialogue de signature numérique

Pour calculer d’autres largeurs de textes

Avez-vous besoin de la même fonction pour calculer d’autres largeur de textes ? – Laissez un commentaire avec vos remarques pour la prochaine mise-à-jour.

Comment c’est fait ?

Je dévoilerai et expliquerai volontiers le code source de cette macro dans un post futur.
Mais j’ai besoin de vous, aidez-moi en posant un commentaire motivant, Merci 😉 !

Enjoy !