Mise à jour des champs calculés dans un formulaire (Microsoft Word)
Word vous permet de créer des formulaires spéciaux qui reposent sur des champs pour la collecte d’informations. Ces formulaires peuvent être protégés afin que le texte en dehors des champs de formulaire ne puisse pas être modifié par les utilisateurs. D’autres numéros de WordTips ont discuté de la manière dont les formulaires peuvent être créés.
Lorsque vous créez un formulaire, vous devrez peut-être parfois demander à Word de mettre à jour le contenu des champs calculés dans le formulaire. Si vous activez la case à cocher Mettre à jour les champs avant l’impression dans les options d’affichage de la boîte de dialogue Options Word, les champs sont calculés automatiquement lors de l’impression d’un document. Mais que se passe-t-il si vous ne voulez pas imprimer le document entier et gaspiller du papier juste pour voir quel est le résultat des calculs?
La solution est de créer une macro simple et d’assigner la macro au lien: / wordribbon-Adding_Tools_to_the_Quick_Access_Toolbar [barre d’outils d’accès rapide]
. La macro suivante fera très bien l’affaire:
Sub UpdateFields() Dim rngStory As Range For Each rngStory In ActiveDocument.StoryRanges rngStory.Fields.Update Next rngStory End Sub
Il est important que la macro soit ajoutée à la barre d’outils d’accès rapide car un formulaire protégé n’autorise pas l’accès aux macros d’une autre manière.
Cette approche, bien sûr, nécessite que l’utilisateur se souvienne de cliquer sur le bouton pour actualiser tous les champs. Si vous préférez, vous pouvez affecter la macro à l’événement OnExit de n’importe quel champ de formulaire. Ainsi, chaque fois que le champ était « sorti », la macro était exécutée. Un abonné de WordTips a également suggéré la macro suivante comme macro OnExit pour mettre à jour les champs:
Sub UpdateRefsInForm() Application.ScreenUpdating = False If ActiveWindow.View.Type = wdPrintView Then ActiveWindow.ActivePane.View.Type = wdNormalView Else ActiveWindow.View.Type = wdPrintView End If If ActiveWindow.ActivePane.View.Type = wdNormalView Then ActiveWindow.ActivePane.View.Type = wdPrintView Else ActiveWindow.ActivePane.View.Type = wdNormalView End If End Sub
Cette macro est plutôt intelligente, en ce sens qu’elle ne fait que passer de la vue dans laquelle vous vous trouvez (vue Brouillon / Normal ou Mise en page) à l’autre vue, puis à nouveau. Cette modification du mode d’affichage oblige Word à mettre à jour les champs.
_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 (9628) s’applique à Microsoft Word 2007, 2010, 2013 et 2016. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu de Word ici:
link: / word-Updating_Calculated_Fields_in_a_Form [Mise à jour des champs calculés dans un formulaire]
.