FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Comment commencer à utiliser des macros dans Word

Vous en avez assez d'effectuer des tâches répétitives dans Microsoft Word ? Enfoui dans le programme se trouve un puissant outil d'automatisation qui peut vous décharger de ces tâches. Nous parlons de macros, et bien que la fonctionnalité repose sur Visual Basic pour Applications (VBA) de Microsoft, vous pouvez l'utiliser même si l'idée de coder vous donne la frousse.

En un clic sur un bouton, Word enregistrera vos actions, générant une macro que vous pourrez rejouer aussi souvent que vous le souhaitez. Si vous êtes aventureux, vous pouvez facilement modifier la macro pour un degré d'automatisation supplémentaire.

Ici, nous allons vous montrer un exemple simple mais utile :comment automatiser la fonction Rechercher et remplacer de Word.

Enregistrer la macro

Dans cet exemple, vous êtes le président estimé de la Society for the Preservation of Antique Dental Appliances. Vous avez des dizaines de documents Word sur les prothèses dentaires historiques et autres, tous avec le nom de la société bien en évidence. Puis, tout à coup, le conseil d'administration vote pour changer le nom en Dental Antiques Preservation League. Vous avez maintenant besoin d'un moyen simple de mettre à jour les documents.

Vous pouvez commencer avec un nouveau document vierge ou en ouvrir un existant. Si vous ne l'avez pas déjà fait, vous devrez activer l'onglet Développeur.

Accédez à Fichier> Options> Personnaliser le ruban . À droite, sous Onglets principaux , vérifiez le développeur option. Sélectionnez OK et quittez.

Comment commencer à utiliser des macros dans Word

Créons maintenant notre macro.

  1. Cliquez sur Développeur > Enregistrer une macro .
  2. Vous serez invité à nommer la macro. Entrez "ChangeSocietyName" ou tout autre nom qui vous convient. Lorsque vous nommez des macros, évitez les espaces, les points, les points d'exclamation et les caractères spéciaux, sinon vous obtiendrez un message d'erreur. Vous pouvez utiliser des chiffres, mais le premier caractère doit être une lettre. Comment commencer à utiliser des macros dans Word
  3. Vous pouvez affecter la macro à un bouton et/ou un raccourci clavier, mais ce n'est pas obligatoire. Si vous choisissez Bouton, Word vous permettra de l'ajouter à la barre d'outils Accès rapide. Vous pouvez également ajouter une brève description de la macro.
  4. Cliquez sur OK , et Word va maintenant enregistrer vos actions. Appuyez sur Ctrl + H pour afficher Rechercher et remplacer dialogue.
  5. Entrez "Society for the Preservation of Antique Dental Appliances" dans Find et "Dental Antique Preservation League" dans Replace. Comment commencer à utiliser des macros dans Word
  6. Cliquez sur Remplacer tout pour exécuter l'opération Rechercher et remplacer. C'est la seule action que vous souhaitez enregistrer. Peu importe si la macro remplace réellement du texte. Le but est de l'enregistrer pour d'autres documents.
  7. Ceci est important :cliquez sur Développeur > Arrêter l'enregistrement . Sinon, la macro inclura toutes les actions ultérieures.

Voyons maintenant votre travail. Ouvrez un document contenant le nom de la société. Cliquez sur Développeur> Macros . Si vous double-cliquez sur ChangeSocietyName, Word effectuera automatiquement l'opération Rechercher et remplacer.

Comment commencer à utiliser des macros dans Word

Astuce : Lorsque vous enregistrez la macro, vous devrez peut-être effectuer une action que vous ne souhaitez pas enregistrer. Par exemple, vous pouvez copier et coller du texte dans la boîte de dialogue Rechercher et remplacer plutôt que de le saisir manuellement. Aucun problème :cliquez simplement sur Développeur > Suspendre l'enregistrement , copiez et collez le texte, puis cliquez sur Développeur > Enregistreur de CV . Ensuite, vous pouvez terminer l'enregistrement de la macro comme décrit ci-dessus.

Bien que nous nous soyons concentrés ici sur Microsoft Word, vous pouvez également utiliser des macros pour augmenter la productivité dans Excel. Et il existe de nombreuses macros permettant de gagner du temps pour Microsoft OneNote.

Plonger dans le code

Nous allons maintenant approfondir notre nouvelle macro Word. Accédez à Développeur> Macros , mais au lieu de double-cliquer sur la macro, sélectionnez-la et cliquez sur Modifier . Cela ouvre l'éditeur Visual Basic, un environnement autonome pour la création d'applications VBA.

Comment commencer à utiliser des macros dans Word

Cela peut sembler intimidant, mais vous pouvez ignorer les menus et la plupart des panneaux. Concentrez-vous plutôt sur la fenêtre contenant le code. Comme vous pouvez le voir, Word vient d'écrire une macro qui effectue la recherche et le remplacement.

 
Sub ChangeSocietyName()
'
' Macro ChangeNomSociété
' Renommer la Société pour la préservation des appareils dentaires anciens
'
Selection.Find.ClearFormatting
Sélection.Rechercher.Replacement.EffacerFormatage
Avec Selection.Find
.Text ="Société pour la préservation des appareils dentaires anciens"
.Replacement.Text ="Ligue de préservation des antiquités dentaires"
.Avant =Vrai
.Wrap =wdFindContinue
.Format =Faux
.MatchCase =Faux
.MatchWholeWord =Faux
.MatchWildcards =Faux
.MatchSoundsLike =Faux
.MatchAllWordForms =Faux
Terminer par
Selection.Find.Execute Remplacer :=wdReplaceAll
Sous-titre de fin

Expliquons ce qui se passe ici.

Le "sous" sur la première ligne est l'abréviation de "sous-programme", un petit programme qui peut s'exécuter seul ou dans le cadre d'une application VBA plus importante. Les lignes précédées de guillemets simples sont réservées aux commentaires. Les guillemets indiquent à VBA d'ignorer les instructions sur ces lignes.

Ensuite, nous arrivons au cœur du code :le code qui exécute la fonction Rechercher et remplacer opération. Comme vous pouvez le voir, il spécifie des valeurs pour chaque option dans la boîte de dialogue Rechercher et remplacer, y compris le texte et le texte de remplacement entre guillemets. Le Selection.Find.Execute près de la fin équivaut à cliquer sur le bouton "Remplacer tout".

Modifier la macro

Pour utiliser des macros, vous n'avez pas besoin de jouer avec le code ou même de le regarder. Mais vous pouvez tirer le meilleur parti de cette fonction si vous êtes prêt à plonger. Par exemple, supposons que vous fassiez une faute de frappe lors de l'enregistrement de la macro. Au lieu de le réenregistrer, vous pouvez aller dans Visual Basic et le réparer.

Vous pouvez également modifier la macro pour la rendre plus utile, et c'est ce que nous ferons ici. Lorsque vous exécutez Rechercher et remplacer, que ce soit manuellement ou via une macro, Word mémorise le texte de recherche et de remplacement. La prochaine fois que vous ouvrirez la boîte de dialogue Rechercher et remplacer, elle ressemblera à ceci.

Comment commencer à utiliser des macros dans Word

Il serait préférable d'effacer les valeurs afin d'obtenir une boîte de dialogue propre. Nous ferons cela avec une deuxième macro, sauf que cette fois, nous le ferons directement en Visual Basic.

  1. Dans l'éditeur Visual Basic, sélectionnez la sous-routine entière, de la première ligne à End Sub. Appuyez sur Ctrl + C pour le copier.
  2. Placez le curseur sous End Sub et appuyez sur Ctrl + V . Vous venez de dupliquer le sous-programme.
  3. Changez le nom de ChangeSocietyName en ClearFindReplace (ou tout autre nom qui vous convient). Ceci est important car VBA générera un message d'erreur si vous essayez d'exécuter des macros avec des noms en double.
  4. Dans le .Text et Replacement.Text valeurs, supprimez le texte mais laissez les guillemets. Essentiellement, vous dites à Word de ne rien trouver et de le remplacer par rien, mais vous effacez également ces valeurs.

Le résultat devrait ressembler à ceci :

Comment commencer à utiliser des macros dans Word
 
Sous ClearFindReplace()
'
' Macro ClearFindReplace
' Effacer le texte de la boîte de dialogue Rechercher et remplacer
'
Selection.Find.ClearFormatting
Sélection.Rechercher.Replacement.EffacerFormatage
Avec Selection.Find
.Texte =""
.Replacement.Text =""
.Avant =Vrai
.Wrap =wdFindContinue
.Format =Faux
.MatchCase =Faux
.MatchWholeWord =Faux
.MatchWildcards =Faux
.MatchSoundsLike =Faux
.MatchAllWordForms =Faux
Terminer par
Selection.Find.Execute Remplacer :=wdReplaceAll
Sous-titre de fin

Nous allons maintenant revenir à la macro ChangeSocietyName. Sous le code Rechercher et remplacer, mais avant End Sub, saisissez ClearFindReplace (sans parenthèses à la fin).

C'est vrai :vous n'êtes pas obligé de saisir tout le code que vous venez de créer, juste le nom de la macro.

 
Sub ChangeSocietyName()
'
' Macro ChangeNomSociété
' Renommer la Société pour la préservation des appareils dentaires anciens
'
Selection.Find.ClearFormatting
Sélection.Rechercher.Replacement.EffacerFormatage
Avec Selection.Find
.Text ="Société pour la préservation des appareils dentaires anciens"
.Replacement.Text ="Ligue de préservation des antiquités dentaires"
.Avant =Vrai
.Wrap =wdFindContinue
.Format =Faux
.MatchCase =Faux
.MatchWholeWord =Faux
.MatchWildcards =Faux
.MatchSoundsLike =Faux
.MatchAllWordForms =Faux
Terminer par
Selection.Find.Execute Remplacer :=wdReplaceAll
EffacerRechercherRemplacer
Sous-titre de fin

Lorsque Word exécute ChangeSocietyName, il exécute d'abord la fonction Rechercher et remplacer d'origine. Ensuite, il interprétera ClearFindReplace comme une commande pour exécuter la deuxième macro.

Aller plus loin avec VBA

Comme vous pouvez le constater, la fonction d'enregistrement de macros de Word peut vous aider à gagner du temps de nombreuses façons. Vous pouvez créer des macros pour automatiser presque toutes les opérations, et dans l'éditeur Visual Basic, vous pouvez modifier les macros, incorporer une macro dans l'autre ou créer une sous-routine qui exécute plusieurs macros l'une après l'autre.

Étant donné que VBA est un langage de programmation à part entière, vous pouvez incorporer les sous-routines dans des applications plus importantes avec des variables, des boucles, des instructions conditionnelles, etc. Et une fois que vous avez appris les bases de VBA dans Word, vous pouvez appliquer une grande partie de ces mêmes connaissances pour créer des macros dans Microsoft Excel et Access.

Pour aller plus loin, vous voudrez en savoir plus sur les conventions VBA et l'éditeur Visual Basic, comme comment organiser votre code et comment gérer les bogues. Mais même si vous souhaitez vous en tenir à des fonctions simples comme celles décrites ici, vous pouvez grandement améliorer votre productivité.


[]