Comment commencer à utiliser des macros dans Word

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ébarrasser 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 des frissons.





En cliquant 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é supplémentaire d'automatisation.





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





Enregistrement de 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 vue. 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.



Aller à Fichier > Options > Personnaliser le ruban . A droite, sous Onglets principaux , vérifier la Développeur option. Sélectionnez OK et quittez.

que signifie cet emoji ?

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.
  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 d'accès rapide. Vous pouvez également ajouter une brève description de la macro.
  4. Cliquez sur d'accord , et Word enregistrera maintenant vos actions. Frappé Ctrl + H pour élever le Trouver et remplacer dialogue.
  5. Entrez Society for the Preservation of Antique Dental Appliances dans Find et Dental Antique Preservation League dans Replace.
  6. Cliquez sur Remplace 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 suivantes.

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.

Conseil: Lorsque vous enregistrez la macro, vous devrez peut-être effectuer une action que vous ne souhaitez pas enregistrer. Par exemple, vous souhaiterez peut-être copier et coller du texte dans la boîte de dialogue Rechercher et remplacer plutôt que de le saisir manuellement. Pas de problème : cliquez simplement 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. Aller à Développeur > Macros , mais au lieu de double-cliquer sur la macro, sélectionnez-la et cliquez sur Éditer . Cela ouvre l'éditeur Visual Basic, un environnement autonome pour la création d'applications VBA.

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()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = 'Society for the Preservation of Antique Dental Appliances'
.Replacement.Text = 'Dental Antiques Preservation League'
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

Expliquons ce qui se passe ici.

Le sub sur la première ligne est l'abréviation de subroutine, 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 toutes les instructions sur ces lignes.

exécuter des jeux windows 95 sur windows 10

Ensuite, nous arrivons au cœur du code : le code qui exécute le Trouver 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. Les Sélection.Rechercher.Exécuter La commande 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 à vous y 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 corriger.

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

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

  1. Dans l'éditeur Visual Basic, sélectionnez l'intégralité du sous-programme, de la première ligne à End Sub. Frappé 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 .Texte et Remplacement.Texte 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 :


Sub ClearFindReplace()
'
' ClearFindReplace Macro
' Clear Text from Find and Replace dialog
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ''
.Replacement.Text = ''
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

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

C'est vrai : vous n'avez pas besoin d'entrer tout le code que vous venez de créer, juste le nom de la macro.


Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = 'Society for the Preservation of Antique Dental Appliances'
.Replacement.Text = 'Dental Antiques Preservation League'
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
ClearFindReplace
End Sub

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 voir, la fonction d'enregistrement de macros de Word peut vous aider à gagner du temps d'innombrables 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 un sous-programme qui exécute plusieurs macros les unes après les autres.

Étant donné que VBA est un langage de programmation à part entière, vous pouvez incorporer les sous-programmes dans des applications plus volumineuses 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.

comment réinstaller windows 10 avec usb

Pour aller plus loin, vous voudrez en savoir plus sur les conventions VBA et l'éditeur Visual Basic, par exemple 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é.

Partager Partager Tweeter E-mail Un didacticiel pour débutants sur l'écriture de macros VBA dans Excel (et pourquoi vous devriez apprendre)

Si vous utilisez régulièrement Excel, cela vaut la peine d'apprendre à créer des macros VBA et d'accéder à de nombreuses autres fonctions et capacités.

Lire la suite
Rubriques connexes
  • Productivité
  • Microsoft Word
  • Microsoft Office 365
  • Microsoft Office 2016
  • Conseils Microsoft Office
  • Microsoft Office 2019
  • Macro
A propos de l'auteur Stephen Beale(6 articles publiés)

Stephen Beale est un rédacteur technologique de longue date basé dans la région de San Francisco. Il est l'auteur de nombreux livres sur les applications informatiques dans l'édition et la conception graphique, et est un ancien rédacteur en chef des nouvelles et des critiques pour Macworld. Il dirige actuellement The Steampunk Explorer, un site Web populaire pour les amateurs de steampunk.

Plus de Stephen Beale

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives !

Cliquez ici pour vous abonner