4.4Macros & introduction au VBA
Comme Excel, Word embarque un enregistreur de macros : il capture une séquence d'actions — mise en forme, insertions, remplacements — et la rejoue à l'identique, d'un raccourci clavier. Pour les tâches répétitives (préparer un document reçu, appliquer la charte maison, nettoyer un texte collé), c'est un multiplicateur de temps.
Vous enregistrerez une première macro utile, jetterez un œil au code VBA généré (Alt + F11), et retiendrez les règles de sécurité : format .docm pour les documents à macros, et prudence absolue avec les macros d'origine inconnue — le vecteur d'attaque historique des virus Office.
Vocabulaire de la section
- Macro
- Séquence d'actions enregistrée et rejouable : Affichage → Macros (ou onglet Développeur). Stockée en VBA.
- VBA
- Le langage d'automatisation d'Office. Éditeur : Alt + F11. Une macro = Sub … End Sub.
- .docm
- Document Word AVEC macros. Le .docx n'en accepte pas : Word propose la conversion à l'enregistrement.
- Normal.dotm (macros)
- Enregistrer une macro « dans tous les documents » la place dans Normal.dotm : disponible partout, sur votre poste.
- Sécurité des macros
- Les macros peuvent exécuter du code malveillant : Word bloque celles des fichiers téléchargés — ne les activez qu'en confiance.
Où trouve-t-on les contrôles de contenu (listes déroulantes, cases à cocher) ?
En pratique — La macro « nettoyage de texte collé »
- Collez un texte « sale » (venu du web : polices exotiques, doubles espaces).
- Affichage → Macros → Enregistrer une macro : nom « NettoyerTexte », bouton raccourci clavier → Alt + Ctrl + N, stockage : Tous les documents.
- Pendant l'enregistrement : Ctrl + A, Ctrl + Espace (mise en forme effacée), puis Ctrl + H : remplacez « espace espace » par « espace ». Arrêtez l'enregistrement.
- Collez un autre texte sale et tapez Alt + Ctrl + N : nettoyage instantané. Curieux ? Alt + F11 pour lire le code VBA généré.
Points clés à retenir
- L'enregistreur écrit le VBA pour vous : commencez toujours par lui.
- Une macro stockée dans Normal.dotm est disponible dans tous VOS documents.
- Document à macros = .docm ; modèle à macros = .dotm.
- Jamais d'activation de macros sur un fichier dont vous ignorez la provenance.
Questions fréquentes
L'enregistreur de Word ne capture pas mes clics dans le texte, pourquoi ?
En enregistrement, la souris ne peut pas positionner le curseur dans le document (limite historique) : utilisez le clavier (flèches, Ctrl + flèches, F5/Atteindre) pendant l'enregistrement.
Word ou Excel : où apprendre le VBA ?
Les bases (Sub, variables, If, For) sont identiques. Excel offre plus de cas d'usage simples pour progresser ; vos acquis Word/Excel VBA sont interchangeables à 80 %.