1. Livres & vidéos
  2. VBA Excel (versions 2024 et Microsoft 365)
  3. Présentation
Extrait - VBA Excel (versions 2024 et Microsoft 365) Programmer sous Excel : macros et langage VBA
Extraits du livre
VBA Excel (versions 2024 et Microsoft 365) Programmer sous Excel : macros et langage VBA
1 avis
Revenir à la page d'achat du livre

Présentation

Présentation du langage VBA

Visual Basic pour Application (VBA) est le langage de programmation commun à toutes les applications de la suite Microsoft Office (Word, Access, Excel, Outlook et PowerPoint), disponible à la fois dans la suite Office 2024 et dans Office 365.

1. Objectifs du langage VBA

Sous Excel, l’utilisation du langage VBA vous permet :

  • d’automatiser des actions répétitives : VBA permet d’effectuer en une seule opération un nombre important de commandes Excel ;

  • d’interagir sur les classeurs d’Excel : le contenu et la présentation de tous les éléments contenus dans un classeur (feuilles, cellules, graphiques...) peuvent être modifiés par du code VBA ;

  • de créer des formulaires personnalisés : les formulaires sont des boîtes de dialogue composées de contrôles ActiveX (zones de texte, listes déroulantes...) auxquelles peut être associé du code VBA. Les formulaires vous permettent de créer des interfaces conviviales pour la saisie ou l’affichage d’informations ;

  • de générer automatiquement des tableaux croisés dynamiques et des graphiques : vous pourrez ainsi automatiser la création de représentations statistiques à partir de vos données Excel (ou de vos données d’Entreprises exportées sous Excel) ;

  • de personnaliser l’interface d’Excel : le ruban Office est intégralement personnalisable et il est possible d’associer des macros développées...

Les macros d’Excel

1. Affichage de l’onglet Développeur dans le ruban

Pour écrire des macros, exécuter des macros enregistrées ou créer des applications Excel, vous devez afficher l’onglet Développeur de la façon suivante :

 Cliquez sur l’onglet Fichier, puis sur Options.

 Sélectionnez la catégorie Personnaliser le ruban.

 Sous Personnaliser le ruban, dans la liste Onglets principaux, sélectionnez la case à cocher Développeur.

 Cliquez sur le bouton OK : l’onglet Développeur a été ajouté au ruban d’Excel, à droite de l’onglet Affichage.

2. Description de l’onglet Développeur

images/01RIN01N.PNG

a. Groupe Code

Bouton de commande

Description

images/01RIN02N.PNG

Ouvre l’environnement de développement. Le raccourci-clavier est [Alt][F11].

images/01RIN03N.PNG

Affiche la liste des macros. Le raccourci-clavier est [Alt][F8].

images/01RIN04N.PNG

Démarre l’enregistrement d’une macro.

images/01RIN05N.PNG

Permet d’utiliser des références relatives à la première cellule sélectionnée.

images/01RIN06N.PNG

Personnalise les paramètres de sécurité des macros.

b. Groupe Compléments

Nom du bouton

Description

images/01RIN07N.PNG

Permet de télécharger des compléments Office.

images/01RIN08N.PNG

Permet de sélectionner des macros complémentaires.

images/01RIN09N.PNG

Permet de sélectionner des compléments COM (librairies de fonctions complémentaires).

c. Groupe Contrôles

Nom du bouton

Description

images/01RIN10N.PNG

Permet d’insérer des contrôles (formulaires ou ActiveX) dans Excel.

images/01RIN11N.PNG

Active ou désactive le mode Création. En mode Création, les contrôles ActiveX peuvent être sélectionnés et modifiés mais ne peuvent pas être exécutés.

images/01RIN12N.PNG

Affiche les propriétés de l’objet Excel sélectionné (feuille ou contrôle).

images/01RIN13N.PNG

Permet d’accéder directement au code associé au contrôle sélectionné.

images/01RIN14N.PNG

Exécute une boîte de dialogue personnalisée.

3. L’enregistrement de macros

a. Enregistrement d’une première macro

Nous allons voir comment créer une macro qui permet d’affecter une bordure et un motif aux cellules sélectionnées :

 Sélectionnez une plage de cellules.

 Cliquez sur le bouton images/01RIN04N.PNG de l’onglet Développeur (vous pouvez également accéder à ce bouton depuis la barre d’état).

 Saisissez, dans la boîte de dialogue suivante, le nom de la macro, sa description et éventuellement la touche de raccourci associée.

images/N01RI01.png

 Cliquez sur le bouton OK pour démarrer l’enregistrement de la macro.

 Effectuez sous Excel les manipulations à enregistrer : affectez un motif et une bordure aux cellules sélectionnées.

 Cliquez sur le bouton images/01RIN15N.PNG de l’onglet Développeur pour interrompre l’enregistrement de la macro (vous pouvez également accéder à ce bouton depuis la barre d’état).

b. Exécuter une macro

Pour lancer une macro depuis Excel :

 Cliquez sur le bouton images/01RIN03N.PNG de l’onglet Développeur ou utilisez le raccourci-clavier [Alt][F8], puis effectuez un double clic sur le nom de la macro.

 Ou effectuez la combinaison de touches associée à la macro.

Pour visualiser les informations relatives à une macro (touches de raccourci et description), sélectionnez la macro dans la liste et cliquez sur le bouton Options...

Pour arrêter l’exécution d’une macro, faites [Echap] ou [Ctrl][Pause].

c. Enregistrer une macro avec des références de cellules relatives

Si vous enregistrez une macro en mode référence absolue (mode par défaut), les plages de cellules référencées dans les opérations de sélections, déplacements... sont des plages fixes. Ex : Range ("A2") désigne la cellule A2.

Si vous enregistrez une macro en mode référence relative, les plages de cellules sont exprimées en fonction de la position de la première cellule active. Ex : ActiveCell.range("A2") désigne la cellule située en dessous de la cellule active, ActiveCell.range("B1") désigne la cellule située à droite de la cellule active. 

ActiveCell.range("A1") fait toujours référence à la première cellule active. A1 est en quelque sorte la référence relative de la première cellule active.

Pour enregistrer une macro avec des références relatives :

 Cliquez sur le bouton images/01RIN17N.PNG de l’onglet Développeur : celui-ci est alors activé (mis en surbrillance).

Si vous cliquez à nouveau sur le bouton images/01RIN18N.PNG, le bouton est désactivé et les macros seront à nouveau enregistrées avec des références absolues.

Exemple

La même séquence d’opérations a été enregistrée dans deux macros : la première macro (RefRelative) a été enregistrée avec l’option référence relative, la deuxième (RefAbsolue) avec l’option référence absolue.

La séquence d’opérations est la suivante :

  • Sélection d’une plage de cellules.

  • Déplacement de la plage de deux lignes vers le bas et d’une colonne vers la droite.

Sub RefAbsolue() 
'  Référence absolue 
   Range("B2:C8").Select 
   Selection.Cut Destination:=Range("C4:D10") 
   Range("C4:D10").Select 
End Sub 
___________________________________________________________________ 
Sub RefRelative() 
'  Référence relative 
   ActiveCell.Range("A1:B7").Select 
   Selection.Cut Destination:=ActiveCell.Offset(2, 1).Range("A1:B7") 
   ActiveCell.Offset(2, 1).Range("A1:B7").Select 
End Sub 

d. Définir le lieu de stockage d’une...

Les affectations de macros

Il est possible d’associer une macro commande aux différents éléments suivants :

  • Commandes personnalisées du ruban.

  • Bouton de commande de la barre d’outils Accès rapide.

  • Contrôles ou objets insérés dans des feuilles de calcul Excel (bouton de commande, image...).

1. Accéder à une macro à partir du ruban Office

Microsoft Office offre une fonctionnalité de personnalisation du ruban. Il est en effet possible d’ajouter, de supprimer ou de réaffecter des onglets, des groupes et des commandes au ruban afin de disposer d’une application personnalisée et optimisée.

Pour accéder à la boîte de dialogue de personnalisation du ruban, procédez de la façon suivante :

 Effectuez un clic droit sur le ruban et sélectionnez l’option Personnaliser le ruban.

ou

 Cliquez sur l’onglet Fichier, puis sur Options et sélectionnez la catégorie Personnaliser le ruban.

La boîte de dialogue suivante est alors affichée :

images/N01RI05.png

Pour insérer des macros commandes dans un nouvel onglet, effectuez les instructions suivantes :

 Cliquez sur le bouton de commande Nouvel onglet : un onglet et un groupe sont alors ajoutés à la liste des onglets principaux.

 Vous pouvez renommer l’onglet et le groupe nouvellement créés en effectuant un clic droit et en sélectionnant l’option Renommer. Le menu contextuel vous permet également d’ajouter des onglets ou des groupes.

 Pour accéder à la liste des macros commandes disponibles, sélectionnez Macros dans la liste déroulante Choisir les commandes dans les catégories suivantes (liste située en haut à gauche).

 Pour ajouter la macro commande à un groupe, sélectionnez la macro dans la liste de gauche et le groupe dans la liste de droite, puis cliquez sur Ajouter

 Vous pouvez modifier le libellé de la macro et son icône, en cliquant avec le bouton droit sur la macro dans la liste de droite et en sélectionnant l’option Renommer.

 Vous pouvez également modifier l’ordre d’affichage des onglets, groupes et commandes au moyen des flèches situées à droite de la boîte de dialogue.

Exemple de personnalisation :

images/N01RI06.png

 Pour valider votre personnalisation, cliquez sur le bouton de commande OK : le nouvel onglet est ajouté dans le ruban Office :

images/N01RI07.png

Vous pouvez à tout moment rétablir le ruban par défaut depuis la boîte de dialogue de personnalisation du ruban, en cliquant sur le bouton Réinitialiser (vous pouvez alors rétablir l’intégralité du ruban ou seulement un onglet). Il est également possible d’exporter ou d’importer...

L’environnement de développement VBE

VBE (Visual Basic Editor) est l’environnement dans lequel vous pouvez saisir, modifier et tester votre code VBA. Cet environnement est également appelé IDE (Integrated Development Environment) ou éditeur VBA.

L’environnement VBE met à votre disposition de nombreux outils permettant de faciliter la programmation et la mise au point de votre code VBA : outils de débogage, assistance à la saisie, explorateur d’objets...

1. Accès à l’environnement VBE

 Pour accéder à l’environnement VBE depuis Excel, cliquez sur le bouton images/01RIN02N.PNG de l’onglet Développeur ou utilisez le raccourci-clavier [Alt][F11].

2. Fermeture de l’environnement VBE

Pour fermer l’environnement VBE et retourner à l’environnement Excel :

 Cliquez sur la croix rouge située en haut à droite de la fenêtre principale de l’environnement VBE.

ou

 Cliquez sur l’option Fermer et retourner à Microsoft Excel du menu Fichier

3. Retour à l’environnement Excel

Pour retourner à l’environnement Excel sans fermer l’environnement VBE, utilisez l’une des deux possibilités suivantes :

 Cliquez sur l’icône images/01RIN37.PNG de la barre d’outils Standard.

 Utilisez la combinaison de touches [Alt][F11].

4. Description de l’environnement VBE

Toutes les fenêtres de l’environnement VBE peuvent être affichées à partir du menu Affichage.

images/24N01RI10.png

(1) La barre d’outils Standard

images/01RIN30N.PNG

1 Affichage Microsoft Excel

2 Ajouter une feuille utilisateur

3 Enregistrer

4 Couper

5 Copier

6 Coller

7 Rechercher

8 Annuler

9 Répéter

10 Exécuter Sub

11 Arrêt

12 Réinitialiser

13 Mode création

14 Explorateur de projets

15 Fenêtre Propriétés

16 Explorateur d’objets

17 Boîte à outils

18 Aide sur VBA Excel

19 Position courante dans la fenêtre de code

(2) L’Explorateur de projets

À chaque classeur ouvert dans Excel est associé un projet. L’explorateur de projets permet d’afficher tous les projets et tous les modules de chaque projet selon une structure arborescente. Les modules sont regroupés en quatre catégories :

  • Les modules associés aux objets Excel (classeur et feuilles).

  • Les modules associés aux formulaires.

  • Les modules standards.

  • Les modules de classe.

Chaque module peut contenir plusieurs procédures....

Configuration de l’éditeur VBA

1. Paramétrage des polices

Les mots-clés, les fonctions et les instructions VBA sont affichés en bleu, les objets, méthodes et propriétés en noir et les commentaires en vert. Les instructions contenant des erreurs sont mises en évidence en rouge.

 Pour modifier le style (couleur, police, taille) des différentes parties du code, sélectionnez Options dans le menu Outils et cliquez sur l’onglet Format de l’éditeur.

images/24N01RI07.png

2. Paramétrage de la saisie du code

Différents outils, comme par exemple la vérification automatique de la syntaxe, la déclaration obligatoire des variables, le complément automatique d’instructions... facilitent la saisie et la mise au point du code VBA.

 Pour activer ces outils, sélectionnez Options dans le menu Outils et cliquez sur l’onglet Éditeur.

images/24N01RI08.png

3. Gestion des erreurs

Les options de récupération des erreurs permettent de définir si l’exécution du code est interrompue lorsqu’une erreur d’exécution survient.

 Pour activer ces options, sélectionnez Options dans le menu Outils et cliquez sur l’onglet Général.

images/24N01RI09.png

 Si votre code VBA inclut une gestion des erreurs, sélectionnez l’option Arrêt sur les erreurs non gérées sinon les instructions...