top of page

📸 Appuyez sur "REC" dans Excel

Votre Guide pour Enregistrer une Macro dans Excel (et Coder Sans Taper) 🤖


Vous avez osé vous aventurer dans le monde du VBA, ce langage qui permet d'automatiser Excel. Mais avant de plonger dans le code pur (avec Sub, Range et les variables), il existe un outil magique pour faire vos premiers pas : l'Enregistreur de Macros.

Pensez-y comme à un magnétophone pour votre feuille de calcul. Vous appuyez sur "Enregistrer", vous effectuez vos actions manuelles (clics, formatages, tris), et Excel traduit tout cela en code VBA. C'est la manière la plus simple de devenir un programmeur sans jamais avoir appris la syntaxe !



Étape 1 : Le Pré-requis (L'onglet Développeur) ⚙️


Comme nous l'avons déja vu, la boîte à outils VBA se trouve dans l'onglet Développeur. Assurez-vous qu'il est bien activé dans les options d'Excel (Fichier > Options > Personnaliser le ruban).

Une fois cet onglet visible, vous trouverez l'icône "Enregistrer une macro" tout à gauche.


Étape 2 : Le Protocole d'Enregistrement  📋


Avant de cliquer sur le bouton, il est crucial d'avoir un plan. L'enregistreur de macros capture tout, y compris les clics inutiles et les hésitations. Plus vos actions sont précises, meilleur sera votre code.

Voici comment démarrer votre enregistrement :

  1. Cliquez sur "Enregistrer une macro". Une petite fenêtre s'ouvre.

  2. Nom de la macro : Donnez-lui un nom clair, sans espaces ni caractères spéciaux (ex: NettoyerFormatage).

  3. Touche de raccourci (Optionnel) : Vous pouvez assigner un raccourci clavier (Ctrl + Maj + [Lettre]) pour lancer la macro n'importe quand.

  4. Enregistrer la macro dans : Laissez par défaut (Ce Classeur), ou choisissez Classeur de macros personnelles si vous voulez que cette macro soit disponible dans tous vos fichiers Excel.

  5. Description : Notez brièvement ce que fait la macro.

  6. Cliquez sur OK.

Félicitations, l'enregistrement a commencé ! Le bouton "Enregistrer une macro" s'est transformé en "Arrêter l'enregistrement".


Étape 3 : Exécuter la Tâche (Les Actions Simples) 🖱️


Pendant que l'enregistrement de la macro tourne, effectuez la séquence d'actions que vous voulez automatiser.

Exemple : Nettoyer le formatage d'une colonne

  1. Cliquez sur l'en-tête de la Colonne A.

  2. Allez dans l'onglet Accueil.

  3. Cliquez sur "Effacer" (dans le groupe Édition).

  4. Choisissez "Effacer les formats".

Dès que vous avez terminé votre séquence, cliquez immédiatement sur "Arrêter l'enregistrement" dans l'onglet Développeur.


Le Résultat : Le Code Magique ! ✨


Maintenant, ouvrez l'Éditeur VBA (ALT + F11) et regardez dans le Module qui a été créé (généralement Module1).

Vous verrez apparaître un code qui ressemble à ceci (simplifié) :

VBA

Sub NettoyerFormatage()
    ' Macro NettoyerFormatage
    ' Raccourci clavier: Ctrl+Maj+N

    Columns("A:A").Select
    Selection.ClearFormats
End Sub

Vous venez de créer ce code sans jamais l'avoir tapé ! Excel a traduit :

  • Columns("A:A").Select : J'ai cliqué sur la colonne A.

  • Selection.ClearFormats : J'ai effacé les formats.


Astuce de Pro : La Puissance de la Référence Relative 💡


L'enregistreur de macros a un paramètre crucial souvent négligé : "Utiliser les références relatives".

  • Enregistrement Normal (Absolu) : Si vous sélectionnez A5 et mettez du gras, la macro mettra TOUJOURS A5 en gras, même si vous la lancez en étant sur B10.

  • Enregistrement Relatif (Recommandé) : Si vous activez "Utiliser les références relatives" avant d'enregistrer, la macro se souvient des mouvements : "Sélectionne la cellule courante, descends de 3 lignes, et mets en gras". C'est beaucoup plus flexible !


Pensez-y : Si vous voulez que votre macro fasse la même chose à l'endroit où se trouve votre curseur, activez toujours "Utiliser les références relatives" avant de cliquer sur "Enregistrer".

L'enregistreur de macros est le meilleur moyen de démarrer votre apprentissage du VBA. Il vous montre le langage correct qu'Excel attend pour chaque action. Amusez-vous à enregistrer des actions simples et à inspecter le code qu'elles génèrent !

L'inconvénient de ce type d'enregistrement, est que le code VBA est "pollué". Rien de bien méchant, mais une fois que l'on maitrise le VBA cela est agaçant. Je m'explique, dès lors que vous scrollez avec votre souris (l'action sur la roullette), cela est aussi enregistré en ligne de code ...


Quelle est la tâche répétitive qui vous fait perdre le plus de temps ? C'est la première chose que vous devriez automatiser ! Dites-le-moi en commentaire ! 👇





Commentaires


Post: Blog2_Post
bottom of page