Comment écrire des macros dans Excel : tutoriel complet

⚡ Résumé intelligent

Les macros Excel enregistrent une séquence d'actions et les reproduisent en un seul clic pour automatiser les tâches répétitives. Cette page explique ce que sont les macros et le VBA, les principes de base de la sécurité des macros, et présente un exemple de macro fonctionnelle qui importe et met en forme un fichier CSV de reçus bancaires.

  • 🇧🇷 Définition principale : Une macro Excel enregistre vos étapes et les reproduit autant de fois que nécessaire, ce qui vous permet de gagner du temps sur les tâches répétitives.
  • 🧑💻 VBA : Visual Basic pour Applications est le langage qu'Excel utilise automatiquement pour écrire les enregistrements de macros ; aucune programmation n'est donc nécessaire pour commencer.
  • Onglet Développeur : Les macros se trouvent dans l'onglet Développeur, qui est masqué par défaut et activable via Options, Personnaliser le ruban.
  • (I.e. Sécurité : Les macros sont désactivées par défaut car elles peuvent être utilisées à mauvais escient ; n'exécutez donc que des macros provenant d'une source fiable.
  • (I.e. Format de fichier: Un classeur contenant des macros doit être enregistré au format .xlsm prenant en charge les macros.
  • ▶ ️ Enregistrement et course : L'option « Enregistrer une macro » capture les étapes, la fonction « Arrêter l'enregistrement » met fin à l'enregistrement et le bouton « Macros » permet de le relire.

Comment écrire des macros dans Excel

Qu'est-ce qu'une macro Excel ?

Macro Excel est un outil d'enregistrement et de lecture qui enregistre simplement vos étapes Excel et la macro les lira autant de fois que vous le souhaitez. Les macros VBA permettent de gagner du temps car elles automatisent les tâches répétitives. Il s'agit d'un morceau de code de programmation qui s'exécute dans un environnement Excel mais vous n'avez pas besoin d'être codeur pour programmer des macros. Cependant, vous avez besoin de connaissances de base en VBA pour apporter des modifications avancées à la macro.

Pourquoi les macros Excel sont-elles utilisées dans Excel ?

En tant qu'humains, nous sommes des créatures d'habitudes. Il y a certaines choses que nous faisons quotidiennement, chaque jour ouvrable. Ne serait-il pas préférable qu'il existe un moyen magique d'appuyer sur un seul bouton et que toutes nos tâches de routine soient terminées ? Je t'entends dire oui. La macro dans Excel vous aide à y parvenir. Dans un langage profane, une macro est définie comme un enregistrement de vos étapes de routine dans Excel que vous pouvez rejouer à l'aide d'un seul bouton.

Par exemple, vous travaillez comme caissier pour une entreprise de distribution d’eau. Certains clients paient via la banque et en fin de compte, vous devez télécharger les données de la banque et les formater d'une manière qui répond aux besoins de votre entreprise.

Vous pouvez importer les données dans Excel et le format. Le lendemain, vous devrez effectuer le même rituel. Cela deviendra vite ennuyeux et fastidieux. Les macros résolvent ces problèmes en automatisant ces tâches de routine. Vous pouvez utiliser une macro pour enregistrer les étapes de

  • Importer les données
  • Formatez-le pour répondre aux exigences de reporting de votre entreprise.

Qu’est-ce que VBA dans un langage profane ?

VBA est l'acronyme de Visual Basic pour Applications. Il s'agit d'un langage de programmation qu'Excel utilise pour enregistrer vos étapes lorsque vous effectuez des tâches de routine. Vous n'avez pas besoin d'être un programmeur ou une personne très technique pour profiter des avantages des macros dans Excel. Excel possède des fonctionnalités qui génèrent automatiquement le code source pour vous. Lire l'article sur VBA pour plus de détails.

Bases des macros Excel

Les macros sont l'une des fonctionnalités du développeur. Par défaut, l'onglet pour les développeurs n'est pas affiché dans Excel. Vous devrez l'afficher via un rapport personnalisé

Les macros Excel peuvent être utilisées pour compromettre votre système par des attaquants. Par défaut, ils sont désactivés dans Excel. Si vous devez exécuter des macros, vous devrez activer les macros en cours d'exécution et exécuter uniquement les macros dont vous savez qu'elles proviennent d'une source fiable.

Si vous souhaitez enregistrer des macros Excel, vous devez enregistrer votre classeur dans un format prenant en charge les macros *.xlsm

Le nom de la macro ne doit contenir aucun espace.

Remplissez toujours la description de la macro lors de sa création. Cela vous aidera, vous et les autres, à comprendre ce que fait la macro.

Exemple étape par étape d'enregistrement de macros dans Excel

Maintenant, dans ce didacticiel sur les macros Excel, nous allons apprendre à créer une macro dans Excel :

Nous travaillerons avec le scénario décrit dans l'importance des macros Excel. Pour ce didacticiel sur les macros Excel, nous travaillerons avec le fichier CSV suivant pour écrire des macros dans Excel.

Enregistrement de macros dans Excel

Vous pouvez télécharger le fichier ci-dessus ici

Téléchargez le fichier CSV et les macros ci-dessus

Nous allons créer un modèle compatible avec les macros qui importera les données ci-dessus et les formatera pour répondre à nos exigences de reporting commercial.

Activer l'option développeur

Pour exécuter un programme VBA, vous devez avoir accès à l'option développeur dans Excel. Activez l'option de développement comme indiqué dans l'exemple de macro Excel ci-dessous et épinglez-la dans votre ruban principal dans Excel.

Étape 1)Allez dans le menu principal « FICHIER »

Sélectionnez l'option « Options ».

Activer l'option développeur

Activer l'option développeur

Étape 2) Maintenant, une autre fenêtre s'ouvrira, dans cette fenêtre, faites les choses suivantes

  • Cliquez sur Personnaliser le ruban
  • Cochez la case pour l'option Développeur
  • Cliquez sur le bouton OK

Activer l'option développeur

Étape 3) Onglet Développeur

Vous pourrez maintenant voir l'onglet DÉVELOPPEUR dans le ruban

Activer l'option développeur

Étape 4) Télécharger

Tout d’abord, nous verrons comment créer un bouton de commande sur la feuille de calcul et exécuter le programme.

  • Créez un dossier dans le lecteur C nommé Bank Receipts
  • Collez le fichier reçus.csv que vous avez téléchargé

Activer l'option développeur

Étape 5) Enregistrer une macro

  1. Cliquez sur l'onglet DÉVELOPPEUR
  2. Cliquez sur Enregistrer la macro comme indiqué dans l'image ci-dessous

Activer l'option développeur

Vous obtiendrez la fenêtre de dialogue suivante

Activer l'option développeur

  1. Entrez ImportBankReceipts comme nom de macro.
  2. La deuxième étape sera là par défaut
  3. Entrez la description comme indiqué dans le diagramme ci-dessus
  4. Cliquez sur l'onglet "OK"

Étape 6) Effectuer une macro Operales étapes/étapes que vous souhaitez enregistrer

  • Placez le curseur dans la cellule A1
  • Cliquez sur l'onglet DONNÉES
  • Cliquez sur le bouton À partir du texte dans la barre de ruban Obtenir des données externes.

Vous obtiendrez la fenêtre de dialogue suivante

Activer l'option développeur

  1. Accédez au disque local sur lequel vous avez stocké le fichier CSV
  2. Sélectionnez le fichier CSV
  3. Cliquez sur le bouton Importer

Vous obtiendrez l'assistant suivant

Activer l'option développeur

Cliquez sur le bouton Suivant après avoir suivi les étapes ci-dessus

Activer l'option développeur

Suivez les étapes ci-dessus et cliquez sur le bouton suivant

Activer l'option développeur

  • Cliquez sur le bouton Terminer
  • Votre classeur devrait maintenant ressembler à ceci

Activer l'option développeur

Étape 7) Formater les données

Mettez les colonnes en gras, ajoutez le total général et utilisez la fonction SOMME pour obtenir le montant total.

Activer l'option développeur

Étape 8) Arrêter l'enregistrement de la macro

Maintenant que nous avons terminé notre travail de routine, nous pouvons cliquer sur le bouton macro arrêter l'enregistrement comme indiqué dans l'image ci-dessous.

Activer l'option développeur

Étape 9) Rejouer la macro

Avant de sauvegarder notre cahier de travail, nous devrons supprimer les données importées. Nous ferons cela pour créer un modèle que nous copierons chaque fois que nous aurons de nouveaux reçus et que nous souhaitons exécuter la macro ImportBankReceipts.

  • Mettez en surbrillance toutes les données importées
  • Faites un clic droit sur les données en surbrillance
  • Cliquez sur Supprimer
  • Cliquez sur le bouton Enregistrer sous
  • Enregistrez le classeur dans un format compatible avec les macros, comme indiqué ci-dessous.

Activer l'option développeur

  • Faire une copie du modèle nouvellement enregistré
  • Ouvrez-le
  • Cliquez sur l'onglet DÉVELOPPEUR
  • Cliquez sur le bouton Macros

Vous obtiendrez la fenêtre de dialogue suivante

Activer l'option développeur

  1. Sélectionnez Importer des reçus bancaires
  2. Met en évidence la description de votre macro
  3. Cliquez sur le bouton Exécuter

Vous obtiendrez les données suivantes

Activer l'option développeur

Félicitations, vous venez de créer votre première macro dans Excel.

Enregistrement macro absolu vs relatif

Avant l'enregistrement, le bouton « Utiliser les références relatives » de l'onglet Développeur détermine comment la macro mémorise les cellules sur lesquelles vous cliquez. Choisir le bon mode est la principale cause du bon ou du mauvais fonctionnement d'une macro enregistrée avec de nouvelles données.

Mode Comment il enregistre Meilleur pour
Absolu (par défaut) Enregistre l'adresse exacte de la cellule, par exemple A1, à chaque fois. Une tâche qui commence toujours dans la même cellule, comme l'importation dans A1.
Relatif Enregistre le déplacement depuis la cellule actuelle, et non une adresse fixe. Une tâche répétée dans une liste, quel que soit l'endroit où se trouve le curseur.

Astuce : La macro ImportBankReceipts ci-dessus utilise l'enregistrement absolu, car elle remplit toujours la feuille à partir de la cellule A1. Activez l'option « Utiliser les références relatives » avant l'enregistrement lorsque les mêmes étapes doivent être exécutées sur une ligne différente à chaque fois.

FAQ

Un fichier .xlsx standard ne peut pas contenir de code macro. Enregistrez plutôt votre classeur au format .xlsm, qui prend en charge les macros. Si vous enregistrez au format .xlsx, Excel vous avertit que les macros seront supprimées du fichier.

Les macros peuvent exécuter des actions malveillantes ; c’est pourquoi Excel les désactive par défaut et affiche un avertissement de sécurité. N’activez les macros que dans un fichier provenant d’une source fiable et vérifiez le code en cas de doute.

Ouvrez l'onglet Développeur, cliquez sur Macros, sélectionnez la macro, puis choisissez Modifier. L'éditeur Visual Basic s'ouvre alors et les étapes enregistrées apparaissent sous forme de code VBA que vous pouvez modifier et enregistrer.

Oui. Les fonctionnalités d'IA telles que Copilot dans Excel et les assistants de code génèrent du code VBA à partir d'une simple description de la tâche. L'utilisateur colle ensuite ce code dans l'éditeur Visual Basic et le teste sur une copie des données.

Oui. Les assistants IA lisent le code VBA généré, décrivent chaque étape en langage clair et suggèrent des moyens de le raccourcir ou de le sécuriser. L'utilisateur examine l'explication et teste toute modification avant de l'utiliser.

Résumez cet article avec :