Vidéo: Débuter avec VBA Excel et la programmation 2025
L'un des moyens d'obtenir du code VBA dans un module VBA est d'utiliser l'enregistreur de macros Excel pour enregistrer vos actions et les convertir en Code VBA. Cependant, toutes les tâches ne peuvent pas être traduites en VBA en enregistrant une macro. Vous pouvez également entrer le code directement ou copier le code d'un module et le coller dans un autre.
La saisie et l'édition de texte dans un module VBA fonctionnent comme prévu. Vous pouvez sélectionner, copier, couper, coller et faire d'autres choses dans le texte.
Une seule ligne de code VBA peut être aussi longue que vous le souhaitez. Toutefois, vous pouvez utiliser le caractère de continuation de ligne pour découper de longues lignes de code. Pour continuer une seule ligne de code (également appelée déclaration ) d'une ligne à la suivante, terminez la première ligne avec un espace suivi d'un trait de soulignement (_). Puis continuez la déclaration sur la ligne suivante. Voici un exemple de déclaration unique divisée en trois lignes:
Sélection. Sort Key1: = Range ("A1"), _ Order1: = xlAscending, Header: = xlGuess, _ Orientation: = xlTopToBottom
Cette instruction se comporterait de la même manière si elle était entrée sur une seule ligne (sans ligne- caractères de continuation).
VBE a plusieurs niveaux d'annulation et de rétablissement. Si vous avez supprimé une instruction que vous ne deviez pas avoir, utilisez le bouton Annuler de la barre d'outils (ou appuyez sur Ctrl + Z) jusqu'à ce que l'instruction apparaisse à nouveau. Après avoir défait, vous pouvez utiliser le bouton Rétablir pour effectuer les changements que vous avez annulés.
Prêt à entrer un code réel? Essayez les étapes suivantes:
-
Créez un nouveau classeur dans Excel.
-
Appuyez sur Alt + F11 pour activer VBE.
-
Cliquez sur le nom du nouveau classeur dans la fenêtre du projet.
-
Choisissez Insérer → Module pour insérer un module VBA dans le projet.
-
Tapez le code suivant dans le module:
Sub GuessName () Dim Msg comme chaîne Dim Ans As Long Msg = "Est votre nom" & Application. Nom d'utilisateur & "?" Ans = MsgBox (Msg, vbYesNo) Si Ans = vbNo Puis MsgBox "Oh, ça ne fait rien." Si Ans = vbYes Then MsgBox "Je dois être clairvoyant!" End Sub
-
Assurez-vous que le curseur se trouve n'importe où dans le texte que vous avez tapé, puis appuyez sur F5 pour exécuter la procédure.
F5 est un raccourci pour la commande Run → Run Sub / UserForm.
Lorsque vous entrez le code indiqué à l'étape 5, vous remarquerez peut-être que VBE apporte quelques modifications au texte que vous entrez. Par exemple, après avoir tapé l'instruction Sub, VBE insère automatiquement l'instruction End Sub. Et si vous omettez l'espace avant ou après un signe égal, VBE insère l'espace pour vous. En outre, VBE change la couleur et la capitalisation de certains textes. Ces changements sont la façon de VBE de garder les choses propres et lisibles.
Si vous avez suivi les étapes précédentes, vous venez de créer une procédure Sub VBA, également appelée macro. Lorsque vous appuyez sur F5, Excel exécute le code et suit les instructions. En d'autres termes, Excel évalue chaque déclaration et fait ce que vous lui avez demandé de faire. Vous pouvez exécuter cette macro un certain nombre de fois - même si elle a tendance à perdre son attrait après quelques dizaines d'exécutions.
Cette macro simple utilise les concepts suivants:
-
Définition d'une procédure Sub (première ligne)
-
Déclaration de variables (instructions Dim)
-
Affectation de valeurs aux variables (Msg et Ans)
-
Concaténation (joining) une chaîne (utilisant l'opérateur &)
-
Utilisation d'une fonction VBA intégrée (MsgBox)
-
Utilisation des constantes VBA intégrées (vbYesNo, vbNo et vbYes)
-
Utilisation d'une construction If-Then (deux fois)
-
Terminer une procédure Sub (la dernière ligne)
Comme mentionné, vous pouvez copier et coller du code dans un module VBA. Par exemple, une procédure Sub ou Function que vous écrivez pour un projet peut également être utile dans un autre projet. Au lieu de perdre du temps à réintégrer le code, vous pouvez activer le module et utiliser les procédures normales de copier-coller (Ctrl + C pour copier et Ctrl + V pour coller). Après avoir collé le code dans un module VBA, vous pouvez modifier le code si nécessaire.
