Comprendre comment Excel VBA 365 automatise les tâches par la création et l’édition de macro est essentiel pour augmenter la productivité, en particulier pour les utilisateurs qui manipulent fréquemment des données volumineuses ou des tâches répétitives. Macro enregistrer les activités sur des feuilles de travail réexécutables, ce qui permet d’économiser du temps et des efforts.
Avec Visual Basic for Applications (VBA), Excel devient une plate-forme pour créer des solutions automatisées à des problèmes complexes. Macro pouvez automatiser le traitement des données, générer des rapports instantanés et intégrer Excel à d’autres applications.
Cette automatisation est particulièrement bénéfique dans les travaux qui nécessitent une grande efficacité, tels que l’analyse de données et la comptabilité. En plus de réduire l’erreur humaine, macro permet aux utilisateurs de se concentrer sur des aspects plus stratégiques du travail. Par conséquent, apprendre à créer et à modifier des macro en Excel VBA 365 est précieux pour les professionnels de divers domaines.
Comment créer des macros dans Excel VBA 365
1. Activation de l’environnement de développement
La première étape de la création d’un macro consiste à s’assurer que l’onglet Developer est déjà actif dans Excel. Cet onglet fournit une variété d’outils pour la création et la gestion de macro.
- Pour activer l’onglet Developer, cliquez sur File en haut de l’écran, puis sélectionnez Options.
- Dans la fenêtre Excel Options, sélectionnez Customize Ribbon sur le côté gauche.
- Cochez l’option Developer dans le volet de droite, puis cliquez sur OK. L’onglet Developer apparaît désormais dans le ruban Excel.
Une fois activé, vous pouvez commencer à créer des macro de différentes manières, notamment en enregistrant des macro et en accédant à Visual Basic Editor (VBE).
2. Enregistrer des macros
L’un des moyens les plus simples de créer un macro est d’utiliser la fonction d’enregistrement. Cette fonctionnalité vous permet d’enregistrer une série d’actions effectuées dans Excel.
- Pour commencer, cliquez sur le bouton Record Macro dans l’onglet Developer.
- Une fenêtre de dialogue apparaîtra, vous demandant de donner le macro à créer. Par exemple, vous pouvez le nommer « Test_Macro ». Assurez-vous que le nom respecte macro règles de nommage.
- Sélectionnez un emplacement de stockage macro : dans le classeur actuel ou Personal Macro Workbook (afin qu’il soit accessible dans tous les classeurs).
3. Nommage des macros
Lorsque vous donnez un nom à macro, il y a quelques règles importantes à garder à l’esprit :
- Le nom macro doit commencer par une lettre ou un signe de soulignement (‘_’).
- Les noms ne doivent pas contenir d’espaces entre les caractères.
- The macro nom ne doit pas être le même que d’autres noms qui existent déjà dans le même classeur.
4. Changer de macros
Une fois que vous avez créé votre macro, vous pouvez le modifier en allant dans Visual Basic Editor (VBE). Ici, vous pouvez afficher macro dans le code et y apporter les modifications nécessaires.
- Accédez à Visual Basic Editor en cliquant sur le bouton Visual Basic dans l’onglet Developer.
- Dans la fenêtre VBE, sélectionnez le macro que vous venez de créer. Le code macro est écrit sous la forme d’une procédure VB (Visual Basic) qui commence par le mot-clé « Sub » et se termine par « End Sub ».
- Vous pouvez ajouter ou modifier le code VBA pour améliorer macro fonctionnalité.

Création de macros à partir de zéro
Voici un exemple de création d’un macro à partir de zéro qui enregistre des étapes simples dans une feuille de calcul, les modifie en ajoutant une mise en forme de cellule et affiche les résultats des calculs de salaire à l’aide de Message Box.
1. Enregistrement des macros
À ce stade, nous enregistrerons les étapes pour saisir les chiffres et calculer le salaire automatiquement :
- Entrez le numéro de salaire dans la cellule A1.
- Entrez le nombre d’heures dans la cellule A2.
- Additionnez les résultats dans la cellule A3 pour calculer le salaire.
2. Modifier les macros
Après avoir enregistré ces étapes de base, vous pouvez ouvrir Visual Basic Editor (VBE) et ajouter du code à :
- Mettez en forme une plage de cellules avec les propriétés font et interior (par exemple, mettez le texte en gras et donnez-lui une couleur d’arrière-plan).
- Ajout d’un Message Box pour afficher les résultats du calcul de la paie.
Exemple de macro simple : calcul du salaire et formatage des cellules.
Sub Calculate_Salary()
Dim wage As Single
Dim hours As Single
Dim salary As Single
wage = Range(“A1”).Value
hours = Range(“A2”).Value
salary = wage * hours
MsgBox “Your salary is “ & salary, vbInformation, “Salary Calculation”
Range(“A3”).Value = salary
With Range(“A1:A3”)
.Font.Bold = True
.Interior.Color = RGB(144, 238, 144) ' Latar belakang hijau muda
End With
End SubExplication du code :
- Dim wage As Single : Il s’agit d’une déclaration de variable wage (salaire) avec le type de données Single.
- Dim hours As Single : Il s’agit d’une déclaration de variable hours (heures de travail) avec un type de données Single.
- salary =wage * hours : Ici, le salaire total est calculé en multipliant les salaires et les heures travaillées.
- MsgBox : Les résultats du calcul du salaire seront affichés dans la boîte de message (Message Box).
- Range(“A3”).Value = salary : Les résultats du calcul du salaire sont stockés dans la cellule A3.
- With Range(“A1 :A3”) : Les cellules A1 à A3 seront formatées avec du texte en gras et un arrière-plan vert clair (RGB(14444, 238, 144)).
Résultats attendus :
- Vous entrerez la valeur des salaires en A1 et des heures travaillées en A2.
- Lorsque le macro est exécuté, le salaire est automatiquement calculé et affiché dans la cellule A3.
- Les résultats salariaux apparaîtront également dans le Message Box.
- Les cellules A1 à A3 seront formatées avec du texte en gras et une couleur d’arrière-plan vert clair.
Utilisation de For…Next Loop dans les macros
En tirant parti de la structure For…Next Loop, vous pouvez automatiser le remplissage de cellules dans des feuilles de calcul Excel avec des données spécifiques. For…Next Loop vous permet d’itérer sur des lignes ou des colonnes dans une plage spécifiée, ce qui le rend très efficace pour répéter des tâches dans le remplissage de données.
Exemple : Remplir une plage de cellules avec des résultats de sommation de lignes et de colonnes
Voici un exemple d’macro qui utilise For…Next Loop pour remplir la plage de cellules A1 :E10 avec la valeur générée par la somme entre le numéro de ligne et le numéro de colonne.
Sub Fill_Cells_With_Loop()
Dim i As Integer, j As Integer
For i = 1 To 10
For j = 1 To 5
Cells(i, j).Value = i + j
Next j
Next i
With Range(“A1:E10”)
.Font.Bold = True
.Interior.Color = RGB(224, 255, 255)
End With
End SubExplication du code :
- For i =1 To 10 : La première boucle pour l’itération à travers les rangées, de 1 à 10 (rangées 1 à 10).
- For j =1 To 5 : La deuxième boucle pour les itérations à travers les colonnes, de 1 à 5 (colonnes A à E).
- Cells(i, j).Value =i + j : Remplissez la cellule avec le résultat de la somme entre le numéro de ligne (i) et le numéro de colonne (j).
- With Range(“A1 :E10”) : Mettez en forme les cellules A1 à E10 avec du texte en gras et un fond bleu clair.
Utilisation de la fonction Chr() pour créer des caractères
La fonction Chr() dans VBA fonctionne pour générer des caractères qui correspondent à ASCI codes. ASCII codes sont des nombres qui représentent des caractères dans les systèmes informatiques. Par exemple, le code 65 indique la lettre A, tandis que le code 66 indique la lettre B, et ainsi de suite.
Vous pouvez utiliser la fonction Chr() pour créer des macros qui remplissent les cellules avec des caractères générés à partir de codes ASCII, de manière aléatoire ou spécifique.
Exemple : Remplir une plage de cellules avec des caractères aléatoires à l’aide de la fonction chr()
Sub Fill_Cells_With_Random_Characters()
Dim i As Integer, j As Integer
Dim asciiCode As Integer
For i = 1 To 5
For j = 1 To 5
asciiCode = Int(26 * Rnd) + 65
Cells(i, j).Value = Chr(asciiCode)
Next j
Next i
With Range(“A1:E5”)
.Font.Bold = True
.Interior.Color = RGB(255, 228, 196)
End With
End SubExplication du code :
- Dim asciiCode As Integer : Déclare une variable pour stocker le code ASCII.
- Int(26*Rnd) + 65 : Génère un nombre aléatoire entre 65 et 90. Le code 65 est A en ASCII et le code 90 est Z.
- Rnd génère un nombre aléatoire entre 0 et 1.
- 26 * Rnd génère un nombre entre 0 et 25 puis ajoute 65 pour obtenir le code ASCII entre 65(A) et 90(Z).
- Cells(i, j).Value = Chr(asciiCode) : Remplit une cellule avec des caractères générés par Chr() basés sur le code ASCII.
- With Range(“A1 :E5”) : Met en forme une plage de cellules A1 :E5 avec du texte en gras et un arrière-plan de couleur pêche (RGB(255, 228, 196)).
Conclusion
En utilisant Excel VBA 365, vous pouvez améliorer votre efficacité au travail dans Excel. L’apprentissage de la création et de l’édition de macro fournira une compétence inestimable dans le monde du travail moderne, où l’automatisation est la clé du succès.

