Débuter avec VBA : enregistrer une macro

Comment enregistrer une séquence d'actions sur le tableaur et les répéter.

Introduction

Vous avez entendu parler de macros, de Visual Basic, d'enregistreur de macros, de modules mais vous ne savez pas du tout ce que sont ces bêtes là ? Alors cette fiche est pour vous. Nous n'aborderons ici que les notions de base, indispensables pour pouvoir utiliser ensuite l'aide fournie par Excel, (accessible avec la touche F1 depuis l'application).

Une macro (sous entendu macro-commande) est une suite d'instructions permettant d'effectuer une tache répétitive simplement. Cette macro peut être très simple, comme reproduire une mise en forme, ou beaucoup plus complexe, incluant par exemple des tests sur la valeur d'une cellule ou des calculs complexes. Les macros peuvent aussi sortir d'excel, aller ouvrir des fichiers dans un répertoire, transférer des fichiers par FTP sur un serveur distant, ouvrir d'autres applications... Les possibilités sont innombrables.

Si le simple fait de lire le mot programmation vous fait fuir alors lisez ce qui suit car vous pouvez utiliser les macros d'excel sans jamais avoir à mettre les yeux sur une seule ligne de code !

Enregistrez votre première macro

Vous avez une liste de valeurs dans la colonne A que vous devez réorganiser. Voici à la main dans l'ordre ce que vous effectuez .

  • vous sélectionnez une cellule et celle située en dessous
  • Vous déplacez ce bloc de deux cellules vers le bas et de une vers la droite.
  • Vous mettez alors en rouge, en gras et au centre les cellules déplacées et
  • vous supprimez les lignes qui sont devenues vides suite au déplacement.
  • Vous répétez cette opération tout au long de votre colonne.

Cela devient vite fastidieux et vous risquez de vous tromper. Comment l'automatiser plus facilement ? On va déclencher l'enregistreur de macros.

Allez dans le menu Outils/macros/nouvelle macro.

La fenêtre ci-contre s'ouvre

Pour retrouver par la suite votre travail, donnez un nom à votre macro. Par exemple "mapremièremacro". Utilisez le petit menu déroulant pour sélectionner "dans ce classeur" pour définir l'endroit où votre macro doit être enregistrée.

Vous pouvez écrire un texte explicatif pour retrouver ensuite ce que fait cette macro (optionnel).

En cliquant sur OK, on voit apparaître une petite barre d'outils flottante marquée arrêt.

Dans cette barre il y a deux boutons, l'un servira à arrêter la macro quand l'enregistrement sera terminé. L'autre symbolise une feuille excel et sert à déterminer si on veut enregistrer les macros en références absolues ou références relatives.

Dans l'exemple que nous avons choisi, nous allons travailler en références relatives, il faut donc cliquer sur ce bouton avant de commencer à enregistrer la macro. On peut à tout moment au cours de l'enregistrement de la macro rebasculer en références absolues ou relatives en cliquant à nouveau sur ce bouton.

A partir du moment où on déclenche l'enregistrement d'une maco, toutes les actions faites dans excel au clavier ou à la souris sont enregistrées, à l'exception de celles qui lancent d'autres applications ou celles effectuées pour faire des sélections successives.

Faites exactement la suite d'opération décrite ci-dessus (sélection déplacement, formatage des cellules) puis arrêtez l'enregistrement (par la barre d'outils ou Outils - macro - arrêter macro).

Réutilisez la macro enregistrée

Pour tester si l'enregistrement a fait ce que vous souhaitiez automatiser, sélectionnez une cellule dans la colonne A puis en allant dans le menu outils/macro, sélectionnez mapremièremacro (si vous n'avez pas donné de nom, elle s'appelle macro1) et lancez la.

Si cette macro effectue une suite d'opérations que vous êtes appelé à répéter fréquemment, vous pouvez y adjoindre un raccourci clavier ou l'associer à un bouton personnalisé dans votre barre d'outils.

Pour associer votre macro à un raccourci clavier

Vous pouvez le faire au moment de l'enregistrement de votre macro, il vous suffit de l'indiquer dans la fenêtre ou vous nommez votre macro.

Vous pouvez également le faire par la suite : dans le menu outils/macros, sélectionnez votre macro, cliquez sur le bouton options et choisissez le raccourci que vous voulez.

Associer votre macro à un bouton de la barre d'outils

Commencez par ajouter un bouton à votre barre d'outils :

Ouvrez le menu outils/personnaliser/onglet commande. Dans le menu de gauche sélectionnez macro et à droite bouton personnalisé. Saisissez le bouton avec la souris (clic gauche) et faites le glisser sur votre barre d'outils. Fermez la fenêtre de personnalisation. Cliquez sur votre nouveau bouton. dans la fenêtre affecter une macro, sélectionnez le nom de votre macro. Maintenant, un clic sur ce bouton lancera votre macro. Pratique !

Pourquoi aller plus loin et apprendre à parler VBA ?

Il y a fort à parier qu'à force d'utiliser l'enregistreur de macros, vous prendrez goût au fait d'automatiser les taches sans grand intérêt qu'on fait souvent dans excel. Mais vous décrouvrirez aussi que l'enregistreur ne permet pas tout. Impossible de lui dire par exemple :" si la valeur de la cellule est négative alors n'exécute pas cette macro" ou bien "fais cette opération sur toutes les lignes de la colonne". Vous ne pouvez pas non plus automatiser des opérations nécessitant de recourir à une autre application que excel comme d'envoyer votre classeur par mail ou choisir un dossier de destination pour enregistrer une copie de sauvegarde votre travail. Toutes ces utilisations avancées des macros nécessitent d'apprendre à manipuler le langage de programmation d'excel, le Visual Basic pour Application ou VBA.

Ce n'est pas du tout aussi compliqué que ce nom peut vous le laisser croire !

vous verrez comment utiliser dans votre classeur un code VBA que l'on vous a fourni. Vous verrez ensuite comme récupérer le code de la première macro que nous venons d'écrire en utilisant l'enregistreur de macro. C'est le premier pas pour comprendre VBA et ensuite pouvoir faire l' analyse du code de la première macro, le modifier et l'adapter pour qu'il réponde au mieux à vos besoins personnalisés.

Commentaires

A la dernière ligne, "analyse du code de la première macro"

Ps : pas trouvé comment modifier des pages (par exemple pour corriger des coquilles).

François

C'est corrigé, merci :) et maintenant tu devrais pouvoir faire les corrections directement.


Ce mois-ci sur Excelabo

- Pas de nouvelle page.
- Pas de page modifiée