# Excel VBA : introduction à la programmation VBA

Avec le Visual Basic for Applications, vous pouvez vous occuper de l’automatisation des processus de travail dans Excel. De cette manière, vous gagnez du temps et vous vous assurez que vos données sont automatiquement mises à jour.

## Qu’est-ce que le VBA ?

VBA est l’abréviation de *Visual Basic for Application*, un langage de script disponible pour les utilisateurs de Microsoft Office dans des applications telles qu’Excel. Le VBA a été développé dans les années 1990 pour standardiser les différentes macro-langues des applications individuelles. Avec VBA Excel, les **flux de travail réguliers peuvent être automatisés** et des outils pratiques de gestion de projet ou de comptabilité peuvent être générés.

Comme toute autre application Office, Excel est composé de différents objets, tels que des feuilles de calcul, des cellules ou des tableaux. Les **méthodes et propriétés** de ces objets peuvent être contrôlées manuellement ou, si nécessaire, via la programmation VBA. Grâce à l’éditeur intégré à l’application, vous pouvez générer des actions automatisées. Ce n’est pas aussi compliqué qu’il n’y paraît, car les différents **éléments de code** sont déjà prédéfinis. Votre tâche consiste simplement à assembler ces éléments de manière à créer une **solution personnalisée**. Ces solutions, également appelées [macros Excel](https://www.ionos.fr/digitalguide/web-marketing/vendre-sur-internet/macros-excel-les-scripts-utiles/), facilitent entre autres l’organisation, la mise en forme ou l’importation de données.

## Ouvrir Excel VBA : comment procéder ?

Avant de pouvoir commencer à programmer en VBA, l’étape initiale consiste à ouvrir Excel VBA. Pour ce faire, vous pouvez simplement utiliser la **combinaison de touches \[Alt\] + \[F11\]**. L’éditeur s’ouvre alors automatiquement.

Une autre possibilité vous est offerte par la barre de menu d’Excel : dans l’onglet « Développeur », cliquez sur « Visual Basic » pour ouvrir Excel VBA.

Il se peut également que les outils de développement ne soient pas affichés. Si c’est le cas, vous pouvez ajouter des onglets à votre barre de menus via « Fichier » &gt; « Options » &gt; « Personnaliser le ruban ». Sous « Onglets principaux », sélectionnez « Développeur ».

[![Image: Excel : ajouter l’onglet Développeur](https://www.ionos.fr/digitalguide/fileadmin/_processed_/1/d/csm_excel-vba-personnaliser-ruban_8cc2c92ee2.webp "Excel : ajouter l’onglet Développeur")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/excel-vba-personnaliser-ruban.png) Sélectionnez l’option « Développeur » via le ruban et les onglets principaux.  Note Les instructions présentées dans cet article fonctionnent pour les versions d’Excel à partir d’Office 2016 ainsi que pour [Microsoft 365](https://www.ionos.fr/digitalguide/email/aspects-techniques/quest-ce-que-microsoft-365/).

## Excel VBA : le tutoriel pour débutants

Avant de créer un nouveau programme pour Excel avec Visual Basic, vous devez d’abord disposer d’un cadre de base. Vous remplissez ensuite ce formulaire avec les modules de code.

**Étape 1 :** une fois que l’éditeur VBA est ouvert, cliquez sur « Insertion » &gt; « Module » pour ajouter un nouveau module.

[![Image: Excel : ajouter un nouveau module](https://www.ionos.fr/digitalguide/fileadmin/_processed_/1/d/csm_excel-vba-personnaliser-ruban_8cc2c92ee2.webp "Excel : ajouter un nouveau module")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/excel-vba-personnaliser-ruban.png) Insérez un nouveau module dans l’éditeur VBA pour passer à l’étape suivante. **Étape 2 :** inscrivez maintenant « Option Explicit » et « Option Base 1 » dans le champ de saisie. Cela permet de définir les types de procédures ***Subs** *et* **Functions***. Les subs sont des sous-programmes qui se composent uniquement d’instructions, sans valeur de retour. Les valeurs de retour sont obtenues par l’utilisation de fonctions, qui sont donc adaptées aux calculs mathématiques. Les réponses du programme sont affichées sous forme de fenêtres de dialogue.

[![Image: Excel : cadre de base VBA](https://www.ionos.fr/digitalguide/fileadmin/_processed_/9/5/csm_excel-vba-exemple-cadre_3fa5d4172c.webp "Excel : cadre de base VBA")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/excel-vba-exemple-cadre.png) Entrez Option Explicit et Option Base 1 dans le champ de saisie. ### Utiliser les variables

Dans Excel Visual Basic, les variables remplissent la même fonction que dans les équations mathématiques. Cependant, elles servent non seulement de supports pour les valeurs, mais aussi pour les chaînes de caractères ou les objets. L’utilisation de variables est toujours utile lorsque des éléments sont abordés plus d’une fois. Dans le code VBA, vous devez déclarer une variable en tant que type de données. Pour déclarer une variable explicitement, utilisez cette déclaration : **`Dim [Variable] As [Type de donnée]`**.

Exemple : **`Dim dateDebut As Date`** signale à la VBA qu’une variable portant le nom « dateDebut » du type de données « Date » doit être créée.

En fonction du contenu des variables, vous devez **sélectionner le type de données correct** dans Excel VBA. Voici un aperçu des types de données les plus couramment utilisés et de leurs caractères de déclaration :

- **Variant :** peut contenir n’importe quelle donnée, comme des valeurs numériques, chaînes de caractères, valeurs de l’heure ou de la date. Une variante est également automatiquement spécifiée si vous ne déclarez pas explicitement un type de données. *Caractère de la déclaration de type : non défini*
- **Integer :** est utilisé pour les entiers qui ont une valeur de -32.768 à 32.767. *Caractères de la déclaration de type : %()*
- **Long :** est utilisé pour les nombres entiers allant de-2.147.483.648 à 2.147.483.647. *Caractères de la déclaration de type : (&amp;)*
- **Double :** comprend tous les nombres à virgule flottante d’environ plus ou moins 1,79 *10^308.* Caractères de la déclaration de type : (#)\*
- **Boolean :** il s’agit exclusivement des variantes True ou False. *S’affiche ainsi : True or False ou #TRUE# or #FALSE#*
- **String :** désigne les chaînes de longueur variable ou fixe. *Caractères de la déclaration de type : ($)*
- **Date :** sert à préciser l’heure et la date. Les heures peuvent être spécifiées de 00:00:00 (minuit) à 23:59:59.9999999. Le format pour la date est **MM/JJ/AA** ou **AAAA-MM-JJ**.

### Les commandes VBA les plus courantes

#### Déclaration Do…Loop

```none
Do
Commande
Loop [While/Until] Expression
```

Avec le *Do Loop*, vous exécutez des commandes qui doivent être répétées aussi souvent que vous le souhaitez jusqu’à ce qu’une certaine condition soit remplie. Avec `While`, la boucle est répétée jusqu’à ce que l’expression soit « False ». Avec `Until`, la boucle est répétée jusqu’à ce que l’expression soit « True ».

#### Déclaration For…Next

```none
For
Variable = [Valeur de départ] To Step [Valeur]
Commande
Next Variable
```

Avec la boucle *For*, les déclarations sont répétées aussi souvent que spécifié. Elle commence lorsque la variable atteint la valeur de départ et augmente de la valeur « Step » spécifiée jusqu’à ce que la valeur finale soit atteinte.

#### Déclaration If…Then…Else

```none
If [Expression1] Then
Commande1
Elseif [Expression2] Then
Commande2
Else
Commande3
End if
```

La décision *If* exécute une série de déclarations qui dépendent de la justesse d’une expression. Si l’expression1 dans le code ci-dessus est correcte, la commande1 est exécutée automatiquement. Si elle n’est pas correcte, le système vérifie si l’expression2 est correcte. Si c’est le cas, la commande2 est exécutée. Si les deux expressions ne sont pas correctes, cela active la commande3.

Conseil Le travail efficace avec Excel n’est pas seulement facilité par la programmation VBA, mais aussi par l’utilisation d’outils permettant de gagner du temps, tels qu’avec les [raccourcis Excel](https://www.ionos.fr/digitalguide/web-marketing/analyse-web/raccourcis-clavier-excel/).

### Excel VBA : exemple pratique

La meilleure façon d’apprendre Excel VBA est de s’entraîner à l’aide d’exemples pratiques. Voici une simple déclaration ***If…Then…Else*** :

[![Image: Excel VBA : exemple](https://www.ionos.fr/digitalguide/fileadmin/_processed_/6/7/csm_excel-vba-exemple-reussite_12ebd5bd55.webp "Excel VBA : exemple")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/excel-vba-exemple-reussite.png) Voici un tableau Excel avec des valeurs d’exemple. Une macro Excel est utilisée pour montrer si le **candidat 142** (Cellule A2) a réussi un test. Pour réussir, il doit avoir obtenu au moins 60 points.

[![Image: Excel VBA : fonction VBA avec une déclaration If-Else](https://www.ionos.fr/digitalguide/fileadmin/_processed_/0/2/csm_excel-vba-exemple-ifelse_f6ba04b8d1.webp "Excel VBA : fonction VBA avec une déclaration If-Else")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/excel-vba-exemple-ifelse.png) Entrez le code pour le If-Test, puis confirmez. Le code VBA ci-dessus `If Range("b2").Value >= 60 Then Range("c2").Value = "Oui"` précise la condition qui répondrait « Oui » à la situation de la cellule C2. Si vous cliquez ensuite sur le bouton de lecture dans la barre de menu supérieure et dans la fenêtre suivante sur « Exécuter », la programmation VBA est mise en route et la cellule C2 remplie automatiquement :

[![Image: Excel VBA : exécuter la commande IF_TEST1](https://www.ionos.fr/digitalguide/fileadmin/_processed_/e/7/csm_excel-vba-macros_057461105e.webp "Excel VBA : exécuter la commande IF_TEST1")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/excel-vba-macros.png) Exécutez la commande grâce à la boîte de dialogue des macros. [![Image: Excel VBA : tableau rempli](https://www.ionos.fr/digitalguide/fileadmin/_processed_/a/e/csm_excel-vba-exemple-reussite-final_647f3332b2.webp "Excel VBA : tableau rempli")](https://www.ionos.fr/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/excel-vba-exemple-reussite-final.png) La réponse s’affiche automatiquement dans la cellule C2. Il s’agit d’un exemple très simple qui devrait donner aux débutants une première impression de Visual Basic dans Excel. Sur Internet, vous trouverez de nombreux autres exemples d’utilisation que vous pouvez mettre en pratique.


This is a markdown version of: [https://www.ionos.fr/digitalguide/web-marketing/vendre-sur-internet/excel-vba/](https://www.ionos.fr/digitalguide/web-marketing/vendre-sur-internet/excel-vba/) for AI/LLM consumption.