Lorsque vous enregistrez une macro, l’enregistreur de macro enregistre toutes les étapes en code Visual Basic pour Applications (VBA). Ces étapes peuvent être saisir du texte ou des chiffres, cliquer sur des cellules ou commandes dans le ruban ou dans des menus, mettre en forme des cellules, lignes ou colonnes, voire importer des données d’une source externe, par exemple, Microsoft Access. Visual Basic Applications (VBA) est un sous-ensemble du puissant langage de programmation Visual Basic, inclus dans la plupart des applications Office. Si VBA vous offre la possibilité d’automatiser des processus à l’intérieur des applications Office et entre elles, il n’est pas nécessaire de connaître le code VBA ou la programmation informatique si l’enregistreur de macro fait ce que vous voulez.
Il est important de savoir que, lorsque vous enregistrez une macro, l’enregistreur de macro capture pratiquement chacune de vos actions. Ainsi, si vous commettez une erreur dans votre séquence, par exemple, en cliquant sur un bouton sur lequel vous n’aviez pas l’intention de cliquer, l’enregistreur de macro enregistre cette action. Pour modifier la macro, vous pouvez soit réenregistrer la séquence entière, soit modifier le code VBA. C’est pourquoi, quand vous enregistrez quelque chose, il est préférable d’enregistrer un processus qui vous est très familier. Plus l’enregistrement de la séquence est souple, plus l’exécution de la macro est efficace.
Les macros et les outils VBA se trouvent sous l’onglet développeur , qui est masqué par défaut, de sorte que la première étape consiste à l’activer. Pour plus d’informations, voir afficher l’onglet Développeur.
Enregistrer une macro
Il existe quelques informations utiles à connaître concernant les macros :
- Lorsque vous enregistrez une macro pour exécuter un ensemble de tâches dans une plage dans Excel, la macro s’exécute uniquement sur les cellules comprises dans cette plage. Par conséquent, si vous ajoutez une ligne à la plage, la macro n’exécute pas le processus sur la nouvelle ligne, mais uniquement sur les cellules figurant dans la plage.
- Si vous projetez d’enregistrer un long processus de tâches, prévoyez d’enregistrer plusieurs macros courtes au lieu d’une seule macro longue.
- Les tâches enregistrées dans une macro Excel ne doivent pas nécessairement se limiter à Excel. Le processus de votre macro peut s’étendre à d’autres applications Office ainsi qu’à toute autre application prenant en charge le code Visual Basic Applications (VBA). Par exemple, vous pouvez enregistrer une macro qui commence par mettre à jour un tableau dans Excel, puis qui ouvre Outlook pour envoyer le tableau à une adresse de courrier.
Pour enregistrer une macro, procédez comme suit.
- Dans l’onglet Développeur, dans le groupe Code, cliquez sur Enregistrer une macro.- OU -Appuyez sur ALT+T+M+R .
- Dans la zone Nom de macro, entrez un nom pour la macro. Utilisez un nom aussi explicite que possible afin de pouvoir retrouver rapidement votre macro si vous en créez plusieurs.
Remarque : Le premier caractère du nom de la macro doit être une lettre. Les caractères suivants peuvent être des lettres, des nombres ou des caractères de soulignement. Les espaces ne peuvent pas être utilisés dans un nom de macro ; un caractère de soulignement peut faire office de séparateur de mots. Si vous utilisez un nom de macro qui est également une référence de cellule, vous risquez d’obtenir un message d’erreur indiquant que le nom de macro n’est pas valide.
- Pour affecter un raccourci clavier pour exécuter la macro, dans la zone touche de raccourci , tapez une lettre (les majuscules ou minuscules) que vous voulez utiliser. Il est préférable d’utiliser des combinaisons de touches CTRL + MAJ (majuscules), car la touche de raccourci macro remplace une touche de raccourci Excel par défaut lorsque le classeur contenant la macro est ouvert. Par exemple, si vous utilisez Ctrl + Z (annuler), vous perdrez la possibilité de procéder à l’annulation dans cette instance d’Excel.
- Dans la liste Enregistrer la macro dans, sélectionnez l’emplacement où vous voulez conserver la macro.En règle générale, vous enregistrez votre macro dans l’emplacement de ce classeur , mais si vous souhaitez qu’une macro soit disponible chaque fois que vous utilisez Excel, sélectionnez classeur de macros personnelles . Lorsque vous sélectionnez Classeur de macros personnelles, Excel crée un classeur de macros personnelles masqué (Personal.xlsb) s’il n’en existe pas, puis enregistre la macro dans ce classeur.
- Dans la zone Description, tapez éventuellement une brève description de l’action de la macro.Même si le champ Description est facultatif, il est recommandé d’en entrer un. Vous pouvez également entrer une description significative avec des informations susceptibles d’être utiles à vos utilisateurs ou à d’autres utilisateurs exécutant la macro. Si vous créez un grand nombre de macros, la description peut vous aider à identifier rapidement la macro à utiliser, sans quoi vous devrez peut-être deviner.
- Cliquez sur OK pour démarrer l’enregistrement.
- Réalisez les actions que vous souhaitez enregistrer.
- Dans l’onglet développeur , dans le groupe code , cliquez sur arrêter l’enregistrement .- OU -Appuyez sur ALT+T+M+R .
Utilisation de macros enregistrées dans Excel
Dans l’onglet Développeur, cliquez sur Macros pour afficher les macros associées à un classeur. Ou appuyez sur ALT + F8. Cette action ouvre la boîte de dialogue Macro.
Attention : L’exécution d’une macro ne peut pas être annulée. Avant d’exécuter pour la première fois une macro enregistrée, assurez-vous que vous avez enregistré le classeur dans lequel vous voulez exécuter la macro, ou, mieux encore, travaillez sur une copie du classeur pour éviter des modifications indésirables. Si vous exécutez une macro qui ne fait pas ce que vous souhaitez, vous pouvez fermer le classeur sans l’enregistrer.
Voici des informations supplémentaires sur l’utilisation de macros dans Excel.
Tâche | Description |
---|---|
Modifier les paramètres de sécurité des macros dans Excel | Lisez des informations spécifiques sur les paramètres de sécurité disponibles pour les macros et leur signification. |
Exécuter une macro | Il existe plusieurs façons d’exécuter une macro. Par exemple, vous pouvez utiliser une touche de raccourci, un objet graphique, une Barre d’outils Accès rapide, un bouton, ou même exécuter la macro à l’ouverture d’un classeur. |
Modifier une macro | Pour modifier les macros attachées à un classeur, vous utilisez Visual Basic Editor. |
Copier un module de macro dans un autre classeur | Si un classeur contient une macro VBA que vous souhaitez utiliser ailleurs, vous pouvez copier le module contenant cette macro dans un autre classeur ouvert en utilisant Microsoft Visual Basic Editor. |
Affecter une macro à un objet, à une forme ou à un graphisme |
|
Affecter une macro à un bouton | Vous pouvez affecter une macro à une icône graphique, puis l’ajouter à la barre d’outils Accès rapide ou au ruban. |
Affecter une macro à un contrôle dans une feuille de calcul | Vous pouvez affecter des macros à des formulaires et à des contrôles ActiveX dans une feuille de calcul. |
Activer ou désactiver les macros dans les fichiers Office | Découvrez comment activer ou désactiver les macros dans les fichiers Office. |
Ouvrez Visual Basic Editor | Appuyez sur ALT + F11 |
Obtenir de l’aide sur l’utilisation de Visual Basic Editor | Découvrez comment trouver de l’aide sur des éléments de Visual Basic. |
Utilisation de code enregistré dans Visual Basic Editor (VBE)
Vous pouvez travailler avec un code enregistré dans Visual Basic Editor (VBE), et ajouter vos propres variables, structures de contrôle et autres codes que l’enregistreur de macro ne peut pas enregistrer. Étant donné que l’enregistreur de macro capture pratiquement chaque action effectuée pendant l’enregistrement, vous pouvez également nettoyer tout code enregistré inutile ne servant pas l’objectif de la macro. L’examen du votre code enregistré est un excellent moyen d’apprendre ou d’affûter vos compétences en programmation VBA.
Pour plus d’informations sur la modification de code enregistré dans un exemple, voir Mise en route avec VBA dans Excel 2010.
Vous avez besoin d’une aide supplémentaire ?
Vous pouvez toujours consulter un expert de la communauté technique Excel, obtenir une assistance dans la communauté Answers ou suggérer une nouvelle fonctionnalité ou une amélioration sur le forum Excel User Voice.