Si vous travaillez régulièrement avec des feuilles de calcul Excel, vous vous retrouvez probablement à répéter les mêmes étapes encore et encore. Ne serait-il pas agréable de cliquer sur un bouton et que ces tâches s’exécutent automatiquement ?
C’est là qu’interviennent les macros Excel. Vous pouvez utiliser des macros pour automatiser les tâches répétitives, ce qui peut vous faire économiser beaucoup de temps et d’efforts.
Qu’est-ce qu’une macro Excel ?
Une macro Excel est une séquence enregistrée de commandes et d’actions Excel que vous pouvez lire autant de fois que vous le souhaitez. Les macros peuvent être utilisées pour automatiser à peu près n’importe quelle séquence de tâches dans Excel, de quelque chose d’aussi simple que la saisie du nom et de l’adresse de votre entreprise dans une feuille de calcul à quelque chose d’aussi complexe que la création d’un rapport personnalisé. Si vous pouvez le faire dans Excel, vous pouvez probablement l’automatiser avec une macro.
Pour utiliser une macro, vous devez d’abord record il. Vous effectuez la séquence d’étapes que vous souhaitez automatiser, et Excel les suit toutes et les enregistre dans la macro. Une fois que vous avez enregistré une macro, vous pouvez la réexécuter à tout moment. Vous pouvez même attribuer un raccourci clavier à une macro afin de pouvoir l’exécuter en quelques frappes.
Les macros Excel sont basées sur le langage de programmation Visual Basic pour Applications (VBA) de Microsoft. Lorsque vous enregistrez une macro, Excel traduit vos actions en code VBA sous le capot. Ainsi, en plus de créer des macros en les enregistrant, vous pouvez également les écrire manuellement en code VBA. Dans cet article, je me concentrerai principalement sur la création de macros en les enregistrant – la méthode la plus simple et la plus rapide. Après cela, je discuterai de la façon dont vous pouvez modifier ou écrire des macros à partir de zéro à l’aide de VBA et fournirai des ressources pour l’auto-apprentissage.
Comment enregistrer une macro
Pour aider à illustrer ce processus, j’utiliserai un petit ensemble de données d’échantillon. Supposons que nous soyons chargés de prendre les noms et les soldes des clients et d’effectuer deux tâches : premièrement, diviser le nom du client en prénom et nom de famille distincts, puis mettre en évidence tous ceux qui ont un solde dû supérieur à zéro. Dans cet exemple, on nous a donné sept clients avec lesquels travailler.
Pour créer une macro, nous utiliserons l’onglet Développeur dans la barre d’outils du ruban en haut de la fenêtre Excel. Ce n’est pas présent par défaut, nous devrons donc l’ajouter. Clique sur le Dossier onglet à l’extrême gauche du ruban (surligné dans la capture d’écran ci-dessus) puis, sur l’écran qui apparaît, cliquez sur Choix en bas de la colonne de gauche.
L’écran Options Excel s’affiche. Sélectionner Personnaliser le ruban dans la barre de navigation de gauche. Ensuite, dans la zone « Personnaliser le ruban » à droite, regardez dans la liste « Onglets principaux » et cochez la Développeur case à cocher. Cliquez sur D’ACCORD.
(Sous macOS, cliquez sur le Exceller menu en haut de l’écran et choisissez Préférences > Ruban et barre d’outils. Dans la zone « Personnaliser le ruban » à droite, regardez dans la liste « Onglets principaux » et cochez la Développeur case à cocher. Cliquez sur Sauver.)
Une fois que vous avez l’onglet Développeur, cliquez dessus et vous verrez des options similaires à celles présentées sur l’écran ci-dessous.
Pour commencer à enregistrer votre première macro, cliquez sur le Enregistrer une macro bouton, et vous serez présenté avec les options ci-dessous. Tout d’abord, créez un nom pour votre macro, en gardant à l’esprit que vous ne pouvez pas utiliser d’espaces. Pour plus de lisibilité, vous pouvez séparer les mots par quelque chose comme _ ou alors –. Ajoutez ensuite une touche de raccourci ou une description si vous le souhaitez, mais celles-ci ne sont pas obligatoires.
Une fois que vous avez frappé D’ACCORD, l’icône doit changer pour indiquer que la macro enregistre vos actions. Il est important que vous n’effectuiez que les actions que vous voulez que la macro fasse et rien d’autre à partir de ce point jusqu’à ce que vous cliquiez sur Arrête d’enregistrer.
Maintenant que la macro enregistre, commençons nos tâches. Tout d’abord, mettez en surbrillance la colonne Solde dû, puis cliquez avec le bouton droit et sélectionnez Insérer une colonne. Cela ajoutera une nouvelle colonne entre les colonnes Nom du client et Solde dû.
Ensuite, nous allons renommer les colonnes, en remplaçant « Nom du client » par « Prénom » et en ajoutant l’en-tête « Nom de famille » à la colonne que nous venons de créer. Sélectionnez les noms des clients dans la première colonne (cellules A:2 à A:8), sélectionnez le Données dans le ruban, puis sélectionnez l’onglet Texte aux colonnes commande.
Un assistant apparaît et affiche les options suivantes. Sélectionner Délimité et frappe Suivant.
Ensuite, sélectionnez le Espacer case à cocher pour indiquer que les mots séparés par un espace doivent aller dans des colonnes séparées. Cliquez sur Suivant.
Pour la dernière option, gardez tout pareil et appuyez sur Finir.
Vous devriez avoir le résultat suivant, avec les noms et prénoms dans des colonnes séparées.
Enfin, nous devons mettre en évidence chaque client avec un solde supérieur à zéro. Mettez en surbrillance toutes les données de la troisième colonne (cellules C : 2 à C : 8), puis cliquez sur Accueil > Mise en forme conditionnelle.
Choisir Mettre en surbrillance les règles de cellule et puis Plus grand que. Entrer 0 et cliquez D’ACCORD pour mettre en évidence chaque client qui a un solde supérieur à zéro.
Cela devrait être le résultat final :
Maintenant que vous avez terminé la séquence de tâches, revenez à la Développeur onglet et cliquez Arrête d’enregistrer. Votre première macro Excel est terminée.
Remarques importantes sur l’utilisation des macros
Si vous voulez relancer votre macro, cliquez simplement sur le Macros bouton et il sera disponible pour vous d’exécuter. Ou, si vous avez attribué un raccourci à la macro, appuyez simplement sur la combinaison de touches pour l’exécuter.
Notez que vous ne pouvez pas enregistrer une feuille de calcul avec des macros en tant que classeur .xlsx traditionnel. Vous devez l’enregistrer en tant que classeur Excel prenant en charge les macros (.xlsm) pour éviter de perdre vos macros.
Une fois que vous avez effectué cette modification, chaque fois que vous souhaitez travailler avec un nouvel ensemble de données, vous pouvez simplement rouvrir le classeur et importer les données sur lesquelles vous souhaitez travailler en accédant au Données onglet et en sélectionnant Obtenir des données. Vous pourrez importer des données à partir de fichiers, de bases de données et d’autres services en ligne.
Sachez que dans de nombreux cas, les macros sont désactivées par défaut. En effet, comme le note Microsoft, « les macros VBA sont un moyen courant pour les acteurs malveillants d’accéder au déploiement de logiciels malveillants et de rançongiciels ». Pour protéger les organisations contre de telles menaces, Microsoft bloque désormais les macros dans des fichiers provenant d’Internet — et parfois dans ceux stockés sur les disques partagés de l’entreprise. Votre organisation peut avoir imposé des restrictions supplémentaires sur les macros.
Ainsi, chaque fois que vous ouvrez un classeur Excel contenant des macros (y compris la vôtre), il est possible que vous voyiez un message d’avertissement comme celui ci-dessous. Si votre classeur est celui que vous avez créé ou provient d’une source fiable, continuez et activez-le. Si la macro provient d’une source non fiable, ne l’activez pas, car il peut s’agir d’un logiciel malveillant.
Une autre caractéristique importante à prendre en compte lors de l’enregistrement de macros est l’utilisation de références relatives. Cette fonctionnalité fait en sorte que, quel que soit l’endroit où les données commencent sur la feuille de calcul, la macro pourra les trouver et y démarrer le traitement.
Par exemple, la macro que nous avons créée commencera toujours le traitement à la colonne A car les références relatives n’ont pas été activées. Par contre, si on faisait les mêmes opérations mais qu’on cliquait sur Utiliser des références relatives d’abord, la macro serait capable de détecter où commence l’information (la colonne C, par exemple) et de commencer son traitement à partir de ce point. Cette fonctionnalité est utile si les données avec lesquelles vous travaillez ne commencent pas toujours au même point.
Comment modifier ou créer une macro avec du code
Si vous souhaitez voir le code VBA derrière une macro, accédez à la Développeur onglet, cliquez Macrosélectionnez la macro, puis cliquez sur Éditer.
Vous serez redirigé vers un volet où vous pourrez voir le code source de la macro que vous avez créée. Dans la capture d’écran ci-dessous, les éléments soulignés montrent les actions que nous avons effectuées, telles que la modification des noms des en-têtes et la sélection des lignes. Vous pouvez les modifier pour différents cas d’utilisation. Par exemple, si les données avec lesquelles vous travaillez s’étendent de la plage A1:A20, vous souhaiterez peut-être étendre la plage pour inclure toutes les cellules possibles.
Si vous voulez vous essayer à l’écriture de macros à partir de zéro, il existe plusieurs ressources en ligne pour apprendre à écrire des scripts VBA, y compris Guerres de code, Udemyet Codecademy. De retour dans Excel, cliquez sur Développeur > Macros > Créer. Vous serez redirigé vers un volet vide où vous pourrez écrire du code VBA.
Copyright © 2022 IDG Communications, Inc.