Applicabilité : Word 365, 2019, 2016 ; Systèmes d'exploitation Windows et MAC OS X.
Voici une question d'un lecteur ::
Je suis un enseignant qui utilise généralement Word 2019 pour rédiger mes documents. J'ai souvent besoin de changer la police et la taille des paragraphes de mon document. Existe-t-il un moyen d'automatiser mon travail avec les macros, afin que je puisse modifier le paragraphe de mon document en un seul clic ? Je suis sûr que cela va me faire gagner quelques heures par semaine, que j'investirai volontiers dans d'autres tâches.
Merci pour votre question. Le principal avantage des macros est qu'elles vous permettent d'automatiser vos tâches dans les applications Microsoft Office. Les macros peuvent être enregistrées ou codées manuellement à l'aide de Visual Basic pour Applications (VBA). Word fournit un enregistreur de macros qui vous permet de développer des scripts d'automatisation sans codage. Si vous débutez avec l'automatisation, cela pourrait être une solution suffisante. Cela dit, avec un peu de connaissances en VBA, vous pouvez écrire des macros efficaces et puissantes.
Activer l'onglet développeur dans Word
Si vous ne voyez pas l'onglet Développeur dans votre ruban Microsoft Word, vous devrez configurer votre environnement de développement de macros.
- Ouvrez un nouveau document Word. Si vous souhaitez travailler sur un fichier existant, assurez-vous d'avoir une copie de sauvegarde avant d'apporter des modifications.
- Maintenant, allez-y et rendez le menu développeur visible dans le ruban .
Enregistrer une macro Word - un exemple pratique
- Maintenant, cliquez sur l' onglet Développeur nouvellement ajouté.
- Accédez au groupe de boutons Code .

- Appuyez sur le bouton Enregistrer une macro pour appeler la fonction d'enregistrement de macros.
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
- Définissez un nom significatif pour votre macro. Remarque : Comme le nom que vous fournissez sera utilisé dans le code VBA créé automatiquement, assurez-vous qu'il n'y a pas d'espace dans le nom de la macro.
- Remarque : bien qu'il soit possible d'attribuer des macros aux boutons , pour plus de simplicité, nous exécuterons la macro manuellement via l'onglet Affichage ou les onglets Développeur.
- Exécutez la séquence d'étapes que vous souhaitez enregistrer. Dans ce cas, vous enregistrerez les étapes suivantes :
- Sélectionnez un paragraphe spécifique dans votre document.
- Accédez à l' onglet Accueil .
- Définissez la police sur Times New Roman.
- Définissez la taille de la police sur 16.
- Centrez votre texte en appuyant sur Ctrl + E.
- Une fois terminé, revenez à l'onglet Développeur et appuyez sur Arrêter l'enregistrement .
- Examinons maintenant le code VBA généré automatiquement. Appuyez sur Macros , puis mettez en surbrillance la macro de mise en forme automatique et appuyez sur Modifier .
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
Enregistrez votre travail dans un modèle compatible Word Macro
- Appuyez sur Fichier , puis sur Enregistrer sous .
- Dans la boîte de dialogue Enregistrer sous, à droite, déterminez votre emplacement d'enregistrement et donnez un nom significatif à votre classeur.
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
- Choisissez Word Macro Enabled Document comme type de document. Remarque : Votre document Word sera enregistré avec le suffixe .docm.
- Appuyez sur le bouton Enregistrer .
Exécution de votre macro
- Ouvrez votre document Word.
- Sélectionnez le paragraphe que vous souhaitez formater automatiquement. A titre d'exemple, voici le paragraphe que j'ai choisi :
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
- Allez dans l' onglet Affichage .
- Appuyez sur le bouton Macros .
- Sélectionnez votre macro de mise en forme automatique
- Hit Run - cela appliquera la macro sur le paragraphe sélectionné.
- Voila, joli résultat !
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
Affectation de votre macro à des boutons ou à des raccourcis clavier
Remarque : Il s'agit d'une étape facultative qui doit être tentée après avoir suivi le didacticiel d'enregistrement de macro ci-dessus.
OK, jusqu'à présent, nous avons fait fonctionner nos bases de macro. Il est maintenant temps d'améliorer un peu la convivialité de notre macro dans le document Word. Laissez-moi vous montrer comment vous pouvez associer votre macro à un bouton d'accès rapide, afin de pouvoir la lancer plus facilement.
- Faites un clic droit sur le ruban et sélectionnez Personnaliser la barre d'outils d'accès rapide.
- La boîte de dialogue Options Word apparaîtra.
- Dans la liste déroulante Choisir les commandes dans, sélectionnez Macros.
- Mettez en surbrillance votre macro et appuyez sur le bouton Ajouter>> pour ajouter un raccourci vers votre macro dans la barre d' outils d'accès rapide .
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
- Appuyez sur le bouton Modifier… pour définir une icône appropriée pour votre macro.
- Définissez un nom d'affichage pour votre bouton.
- Appuyez sur OK .
- Maintenant, vous pouvez lancer votre macro à partir de la barre d'outils d'accès rapide, juste au-dessus du ruban.
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
Remarque : Vous pouvez associer votre macro Word non seulement à des boutons d'accès rapide, mais également à des boutons de commande intégrés dans votre document et à des raccourcis clavier personnalisés spécifiques.
Créer des macros Word avec VBA
Avec quelques compétences simples en codage Visual Basic pour Applications, nous pouvons éditer les macros et écrire des programmes pour automatiser divers types de travaux à l'aide de VBA.
Remarque à part : Pour votre information, certaines des applications Microsoft Office, telles que Powerpoint et Outlook, n'ont pas d' enregistreurs de macros intégrés . Par conséquent, l'écriture de VBA est obligatoire pour écrire des macros Powerpoint et automatiser Outlook.
- Pour modifier une macro, cliquez sur l' onglet Développeur et sélectionnez Macros dans l'option de code.
- Cliquez sur la macro et sélectionnez Modifier .
- L'éditeur Visual Basic pour applications s'ouvrira.
- Supposons que nous souhaitions modifier manuellement la macro que nous avons enregistrée à l'étape précédente, afin que Word définisse non seulement la taille, la police et l'alignement du paragraphe, mais également la couleur.
- La définition de la couleur d'une section s'effectue à l'aide de la commande VBA suivante :
[code] Sélection.Font.Color [/code]
- Dans notre cas, nous voudrons le définir sur un bleu aléatoire, nous ajouterons donc l'extrait suivant à notre macro enregistrée :
[code] Selection.Font.Color = 16737792[/code]
- Voici à quoi devrait ressembler votre code VBA :
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
- Dans l'éditeur VBA, cliquez sur Fichier puis sur Enregistrer .
- De retour à votre document, exécutez votre macro sur un paragraphe et observez le changement de couleur de la police.
![Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles Macros Word au-delà de l'enregistreur de macros : tutoriel sur les macros Office 2016, 365/2019 et exemples utiles]()
Exemple de macro Word utile que vous pouvez écrire
Depuis la publication de ce didacticiel, de nombreux lecteurs ont demandé des exemples plus approfondis de macros Word. Cette liste couvre les tâches les plus courantes que vous pouvez automatiser à l'aide de Visual Basic dans Word. Nous y voilà:
Créer et enregistrer un nouveau document
Sub CreateNewDoc()
'This small snippet first creates a new document, then it checks whether a document with the same name already exists before saving.
Dim myDoc As New Document
Dim filePath As String
'Modify your file path as needed
filePath = "C:\MyNewDoc.docx"
Set myDoc = Documents.Add
With myDoc
If Dir(filePath) = "" Then
.SaveAs2 (filePath)
Else
'You have already an existing document
MsgBox ("Please use a different file name")
End If
End With
myDoc.Close SaveChanges:=wdPromptToSaveChanges
End Sub
Remarque : lors de la création de nouveaux documents, vous pouvez spécifier le modèle (fichiers .dotm/.dotx) que vous souhaitez utiliser. Les modèles sont généralement stockés dans : C:\Users\\AppData\Roaming\Microsoft\Templates
Documents.Add Template:=<your_template_folder>
Ouvrir un document Word avec VBA
Sub OpenDoc()
'This code checks whether your document exists and then opens it
filePath = "C:\MyNewDoc.docx"
If Dir(filePath) = "" Then
MsgBox ("file doesn't exist")
Else
Documents.Open (filePath)
End If
End Sub
Fermer un/tous les documents ouverts
Sub CloseDoc()
'This code closes a specific document
filePath = "C:\MyNewDoc.docx"
Documents(filePath).Close SaveChanges:=wdPromptToSaveChanges
End Sub
Sub CloseAllDocs()
'This code closes all opened documents in your computer
Documents.Close SaveChanges:=wdPromptToSaveChanges
End Sub
Enregistrement de Word au format PDF
Voici comment automatiser facilement l'enregistrement de documents Word sous forme de fichiers PDF.
Sub SaveAsPdf()
'This code saves a word document in a PDF format
FileName = Left(CStr(ActiveDocument.Name), Len(CStr(ActiveDocument.Name)) - 5)
ActiveDocument.SaveAs2 FileName:="c:\" + FileName + ".pdf", FileFormat:=wdFormatPDF
End Sub
Insertion d'en-tête et de pied de page
Ce code définit l'en-tête et le pied de page de la première page de votre document Word.
Sub InsertHeaderFooterFirstPage()
Dim myDoc As Document
Dim headerText As String
Dim footerText As String
Set myDoc = ActiveDocument
'Replace the header and footer text as needed
headerText = "This document was written by you"
footerText = "All rights reserved to you"
With myDoc.Sections(1)
'We first ensure that we can set different header and footer texts
.PageSetup.DifferentFirstPageHeaderFooter = True
'Setting the header and footer texts
.Headers(wdHeaderFooterFirstPage).Range.Text = headerText
.Footers(wdHeaderFooterFirstPage).Range.Text = footerText
End With
End Sub
Idées de macros de mots supplémentaires
Voici quelques idées supplémentaires que nous publierons dans un futur proche.
- Rechercher et remplacer (méthode d'exécution)
- Insérer un paragraphe (avant et après une sélection)
- Impression de documents par programmation
- Travailler avec des tableaux
Ceci conclut notre tutoriel pour aujourd'hui. Comme vous venez de le voir, il y a beaucoup à faire avec l'enregistreur de macros Word et les macros VBA dans Word. Dans le cas où vous recherchez une aide plus spécifique qui dépasse le cadre de ce tutoriel, veuillez nous contacter via notre formulaire de contact .