Bureautique
Les macros
Enregistrement d une Macro-
-
- Mode d’enregistrement des macros
- Enregistrer une macro avec le classeur actif
-
Si vous avez besoin de la macro uniquement dans le classeur où vous l’avez créée, cliquez sur Enregistrer ou Enregistrer sous comme vous le feriez normalement. Toutefois, l’enregistrement d’un classeur avec macros est légèrement différent, car il doit être dans un format de fichier spécial « prenant en charge les macros ». Par conséquent, lorsque vous essayez d’enregistrer, Excel vous propose deux options :
- Pour enregistrer sous forme de classeur prenant en charge les macros (type de fichier *.xlsm), cliquez sur Non.
- Pour enregistrer sous forme de classeur sans macro, cliquez sur Oui.
Pour enregistrer sous forme de classeur prenant en charge les macros :
- Cliquer sur Non.
- Dans la boîte de dialogue Enregistrer sous, dans la zone de liste Enregistrer en tant que type, sélectionnez Classeur Excel prenant en charge les macros (*.xlsm).
- Cliquer sur enregistrer
-
- Créer et enregistrer toutes les Macros dans un répertoire unique
-
Lorsque vous première créer une macro dans un classeur, elle fonctionne uniquement dans ce classeur. Mais que se passe-t-il si vous souhaitez utiliser la macro dans d’autres classeurs ? Pour rendre vos macros disponible chaque fois que vous ouvrez Excel, vous pouvez les créer dans un classeur nommé Personal.xlsb. Il s’agit d’un classeur masqué que qui se trouve sur votre ordinateur, qui s’ouvre en arrière-plan chaque fois que vous ouvrez Excel.
- Sous windows
Les macros et outils VBA sont accessibles dans l’onglet Développeur. Celui-ci étant masqué par défaut, la première étape consiste à l’activer.
- Activer l’onglet Développeur
- Sous l’onglet fichier, accédez à options > personnaliser le ruban
- Sous Personnaliser le ruban et onglets principaux, activez la case à cocher Développeur
- Accédez à l’onglet développeur, puis cliquez sur Enregistrer une Macro.
- Dans la boîte de dialogue Enregistrer une Macro saisir le nom de nom de la Macro. Vous pouvez accepter le nom Excel vous donne, tels que Macro1, car il s’agit simplement une macro temporaire.
- Dans la zone Enregistrer la macro dans, sélectionnez Classeur de macros personnelles > OK. Il s’agit de l’étape la plus importante, car si vous n’avez pas un classeur de macros personnelles, Excel crée un pour vous.
- Cliquez sur développeur > Arrêter l’enregistrement et Excel aura créé votre classeur de macros personnelles.
- Lorsque vous fermez le classeur, vous serez invité à enregistrer le classeur, ainsi que le classeur de macros personnelles.
- Sous MacOs
Assurez-vous que l’onglet Développement est visible dans le ruban. L’onglet Développement n’étant pas affiché par défaut, procédez comme suit :
- Accédez à Excel > Préférences... > Barre d’outils et du ruban.
- Dans la catégorie Personnaliser le ruban, dans la liste Onglets principaux, activez la case à cocher développeur, puis cliquez sur Enregistrer.
Ensuite, créez une macro. Nous allons enregistrer une macro qui ne fait rien, mais pour créer le classeur de macros personnelles.
- Accédez à l’onglet développeur, puis cliquez sur Enregistrer une Macro.
- Dans la boîte de dialogue Enregistrer une Macro ne vous préoccupez pas entrer un nom pour la macro dans la zone nom de la Macro. Vous pouvez accepter le nom Excel vous donne, tels que Macro1, car il s’agit simplement une macro temporaire.
Lorsque vous commencer la création de macros de votre choix, vous souhaiterez leur donner des noms descriptifs, afin de déterminer ce qu’elles font.
- Dans la zone Enregistrer la macro dans, sélectionnez Classeur de macros personnelles > OK. Il s’agit de l’étape la plus importante, car si vous n’avez pas un classeur de macros personnelles, Excel crée un pour vous.
- Cliquez sur développeur > Arrêter l’enregistrement et Excel aura créé votre classeur de macros personnelles.
- Lorsque vous fermez le classeur, vous serez invité à enregistrer le classeur, ainsi que le classeur de macros personnelles.
-
- Cas pratique
- Problème et étape pour la résolution
-
Pour mieux comprendre l’utilité des macros nous allons présenter un exemple contrait. Nous allons recopier automatiquement les éléments d’une feuille vers une autre feuille
N.B : Avant de commencer, lancer l’enregistrement de la macro avec le classeur actif comme vu précédemment. Onglet Développeur > enregistrer une macro
Action 1 : sélectionner une plage de cellule
- Action 2 : on effectue une copie de la plage (CTRL+C)
- Action 3 : création d’une nouvelle feuille
Pour créer une nouvelle feuille cliquer sur le bouton « + »
- Action 4 : coller la plage dans la nouvelle feuille
Enfin arrêter l’enregistrement de la macro. Développeur > arrêter l’enregistrement.
Pour exécuter la macro il serait mieux de créer un bouton pour déclencher l’action
- Aller dans Développeur > Insérer sélectionner le type de bouton à utiliser
- Dessiner le bouton la fenêtre ci-dessous va s’afficher sélectionner la macro associée au bouton
- Saisir le nom du bouton et sur ‘‘Macros dans :’’ choisir « nom_de_votre_classeur.xlsm »
- Cliquer sur ok
-
- Rendu de l’exemple
- Figure 1 : montre le classeur avant le lancement de la macro. Le lancement de la macro se fait avec bouton ‘‘copier-coller’’
Rendu du résultat après exécution de la macro
Il est possible de voir le code VBA crée automatique par Excel :
- Développeur > Visual Basic
- Ouvrir VBAProject (classeur1.xlsm)
- Dans le dossier Modules ouvrir Module 1
- La partie encerclée en rouge représente le projet VBA crée.
- La partie encerclée en bleu représente le script de la Macro crée.
L’étude de ce script fera l’objet du prochain chapitre.