Cours VBA
Cours VBA
UNIVERSITE DE KARA
Mousson 2022-2023
Visual Basic for Application (VBA)
Sommaire
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 2 / 90
Visual Basic for Application (VBA) Introduction
Le VBA est un langage qui nécessite une application hôte pour s’exécuter (Excel dans
notre cas). Grâce à VBA nous allons réaliser à peu prêt tout ce que nous voulons avec
Excel.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 3 / 90
Visual Basic for Application (VBA) Introduction
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 4 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Si dans Microsoft Excel, vous effectuer fréquemment certaines taches, vous pouvez
enregistrer une macro pour les automatiser.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 5 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 6 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Un exemple simple
Pour ce faire :
1 Dans la barre de menu cliquer sur l’onglet Développeur
2 Cliquer sur Enregistrer une macro puis sur OK
3 Exécuter les opérations ci-dessus sans interruption (car toutes les manipulations
sont enregistrées)
4 Pour terminer cliquer sur Arrêter l’enregistrement
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 7 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 8 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Exécuter la macro
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 9 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 10 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Modification de la macro
Pour visualiser le code on fait alt + F11 ou en suivant les étapes suivantes :
1 Onglet Développeur puis Macro
2 cliquer sur Modifier
3 Toutes les commandes enregistrées apparaissent, codées en VBA. Ces commandes
peuvent être modifiées avec une bonne connaissance du VBA.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 11 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 12 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 13 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 14 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Le texte en vert (texte précédé d’une apostrophe) est un commentaire, il n’est pas pris
en compte à l’exécution du code :
Les commentaires sont très utiles pour s’y retrouver lorsque l’on dispose de beaucoup
de code ou pour ne pas exécuter certaines lignes de code sans pour autant les supprimer.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 15 / 90
Visual Basic for Application (VBA) Création d’une macro simple
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 16 / 90
Visual Basic for Application (VBA) Exécution de macro à partir d’un bouton (1)
Nous souhaitons maintenant que cette macro s’exécute en cliquant sur un bouton. Insérez
un bouton en cliquant sur Insérer puis sur Bouton (Contrôles de formulaires) :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 17 / 90
Visual Basic for Application (VBA) Exécution de macro à partir d’un bouton (1)
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 18 / 90
Visual Basic for Application (VBA) Exécution de macro à partir d’un bouton (1)
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 19 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Nous allons créer une macro qui sélectionnera une cellule de notre choix. Ouvrez l’éditeur et
ajoutez-y un module
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 20 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Créez maintenant un bouton de formulaire auquel vous associer cette macro (vide pour le
moment)
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 21 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 22 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 23 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Vous pouvez tester cette macro en cliquant sur votre bouton de formulaire, la cellule A8 est
alors sélectionnée. Nous allons maintenant modifier cette macro pour sélectionner la cellule
A8 de la seconde feuille :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 24 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 25 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 26 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 27 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 28 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 29 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Cette autre manière de sélectionner permet des sélections plus dynamiques et sera bien utile
par la suite. En voici un petit exemple :
Ici, le numéro de ligne est Int(Rnd * 10) + 1, autrement dit un nombre entre 1 et 10 (inutile
de retenir ce code pour le moment). La fonction Rnd (Random) est la fonction qui génère un
nombre aléatoire entre 0 et 1.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 30 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Il est possible de sélectionner des lignes entières avec Range ou Rows (Rows étant spécifique
aux lignes) :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 31 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Tout comme pour les lignes, il est possible de sélectionner des colonnes entières avec Range
ou Columns (Columns étant spécifique aux colonnes) :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 32 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les propriétés
Nous allons maintenant agir sur le contenu et l’apparence des cellules et des feuilles. Pour
cela écrivez la macro proprietes (incomplete) suivante que nous allons completer au fur et à
mesure.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 33 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Pour afficher la liste des possibilités que l’on peut associer à l’objet Range, ajoutez un .
après Range("A8") :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 34 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Pour ce premier exemple, cliquez sur Value puis appuyez sur la touche Tab pour valider ce
choix :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 35 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 36 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 37 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
De même, si l’on souhaite modifier la cellule A8 de la feuille 2 d’un autre classeur ouvert, il
faut préciser le nom du classeur en début de ligne à l’aide de
Workbooks("Nom du fichier") :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 38 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les propriétés
Mise en forme du texte
Après avoir sélectionné la propriété Font et ajouté un ., la liste des propriétés que l’on peut
attribuer à la mise en forme du texte apparaît :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 39 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les propriétés
Mise en forme : taille du texte et texte en gras
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 40 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les propriétés
Exercice
Exercice
1 Comment met-on un texte en italique ?
2 Comment souligner un texte ?
3 Comment modifier la police d’un texte ?
Remarque 1.1
Seule petite partie des possibilités de personnalisation sont indiquées ici. Si la propriété
dont vous avez besoin n’est pas détaillée ici, vous pouvez utiliser l’enregistreur de macro
pour vous éviter de longues recherches.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 41 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les propriétés
Modifier la valeur d’une cellule en fonction d’une autre
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 42 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les propriétés
Modifier la valeur d’une cellule en fonction de sa propre valeur
Nous allons maintenant créer ici un compteur de clics. A chaque clic, la valeur de A1 sera
augmentée de 1 :
Remarque 1.2
Cette ligne ne doit pas être interprétée comme une opération mathématique (rappelez-
vous que ce qui est à gauche du = prend la valeur de ce qui est à droite du =).
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 43 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les propriétés
With
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 44 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 45 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Bien que ce ne soit pas indispensable dans ce cas, il est également possible de faire de même
pour .Font, ce qui nous donnerait :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 46 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les couleurs
Attribuons une couleur au texte dans la cellule A1. Pour cela on ajoute Font. on obtient :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 47 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les couleurs
ColorIndex (1)
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 48 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les couleurs
ColorIndex (2)
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 49 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les couleurs
Color
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 50 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les couleurs
Un exemple avec Color
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 51 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les couleurs
Créer une bordure colorée
Nous allons créer une macro qui va ajouter une bordure à la cellule active avec ActiveCell .
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 52 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les couleurs
Colorer le fond des cellules sélectionnées
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 53 / 90
Visual Basic for Application (VBA) Les feuilles et cellules
Les couleurs
Colorer l’onglet d’une feuille
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 54 / 90
Visual Basic for Application (VBA) Les variables
Variables
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 55 / 90
Visual Basic for Application (VBA) Les variables
Remarque 1.3
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 56 / 90
Visual Basic for Application (VBA) Les variables
Les variables
Les types de variables
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 57 / 90
Visual Basic for Application (VBA) Les variables
Exercice
1 Ecrire une macro qui va récupérer le nom dans la cellule A2, le prénom dans la
cellule B2, l’âge dans la cellule C2 et qui va les afficher dans une boîte de
dialogue.
2 Modifier ce code en affichant dans la boite de dialogue la ligne du tableau
correspondant au numéro indiqué dans la cellule F5.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 58 / 90
Visual Basic for Application (VBA) Les variables
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 59 / 90
Visual Basic for Application (VBA) Les variables
Les variables permettent de stocker une seule valeur par variable, les tableaux permettent de
stocker une multitude de valeurs par tableau (leur utilisation est proche de celle des
variables).
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 60 / 90
Visual Basic for Application (VBA) Les variables
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 61 / 90
Visual Basic for Application (VBA) Les variables
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 62 / 90
Visual Basic for Application (VBA) Les variables
Les constantes
Les constantes permettent de stocker des valeurs comme les variables, à la différence près
qu’on ne peut pas les modifier (d’où leur nom) après les avoir déclarées.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 63 / 90
Visual Basic for Application (VBA) Les variables
Si la variable est déclarée au début d’une procédure (Sub), elle ne peut être utilisée que
dans cette même procédure. La valeur de la variable n’est pas conservée après
l’exécution de la procédure.
Pour pouvoir utiliser une variable dans toutes les procédures d’un module, il suffit de la
déclarer en début de module. De plus, cela permet de conserver la valeur de la variable
jusqu’à la fermeture du classeur.
Même principe pour utiliser une variable dans tous les modules, à la différence près que
Dim est remplacé par Public :
Pour conserver la valeur d’une variable à la fin d’une procédure, remplacez Dim par
Static.
Pour conserver les valeurs de toutes les variables d’une procédure, ajoutez Static devant
Sub
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 64 / 90
Visual Basic for Application (VBA) Les conditions
Conditions
Les conditions servent à effectuer des actions en fonction de critères précis (même principe
que la fonction SI). La principale instruction est If, voici comment elle fonctionne :
Reprenons le code de l’exercice précédent. Si nous entrons une lettre en F5, cela génère un
bug et nous voulons éviter cela. La fonction IsNumeric sera utilisée dans cette condition :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 65 / 90
Visual Basic for Application (VBA) Les conditions
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 66 / 90
Visual Basic for Application (VBA) Les conditions
Conditions
Les opérateurs
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 67 / 90
Visual Basic for Application (VBA) Les conditions
Exercice
Notre tableau contient 13 lignes de données (de la ligne 2 à la ligne 14), modifier
le code vérifier si la variable numeroLigne est plus grande ou égale à 2 et plus
petite ou égale à 15.
ElseIf
ElseIf permet d’ajouter plusieurs conditions à la suite :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 68 / 90
Visual Basic for Application (VBA) Les conditions
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 69 / 90
Visual Basic for Application (VBA) Les conditions
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 70 / 90
Visual Basic for Application (VBA) Les boucles
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 71 / 90
Visual Basic for Application (VBA) Les boucles
Do Loop
Ce code est très répétitif. Maintenant, imaginez qu’il faille numéroter plusieurs milliers de
lignes ... Vous comprenez donc probablement l’intérêt de créer des boucles.
Voici la boucle Do :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 72 / 90
Visual Basic for Application (VBA) Les boucles
Avec Do, la condition peut également Plutôt que de répéter la boucle tant que
être placée en fin de boucle, ce qui la condition est vraie, il est possible de
implique que les instructions seront dans quitter la boucle lorsque la condition est
tous les cas exécutées au moins une fois vraie en remplaçant While par Until :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 73 / 90
Visual Basic for Application (VBA) Les boucles
For Next
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 74 / 90
Visual Basic for Application (VBA) Les boucles
La boucle For Each permet de parcourir chaque élément d’un ensemble d’éléments, par
exemple parcourir chaque cellule d’une plage de cellules :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 75 / 90
Visual Basic for Application (VBA) Les procédures et les fonctions
Public - Private
Pour le moment, toutes les procédures créées sont de type Public, elles sont accessibles
depuis tous les modules. Ainsi Sub exemple () est identique à Public Sub exemple ()
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 76 / 90
Visual Basic for Application (VBA) Les procédures et les fonctions
Les arguments
Les arguments permettent de transmettre des valeurs d’une procédure à une autre (car
rappelez-vous que par défaut les variables ne sont pas accessibles depuis les autres
procédures). En cas d’arguments multiples, ceux-ci doivent être séparés par des virgules.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 77 / 90
Visual Basic for Application (VBA) Les procédures et les fonctions
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 78 / 90
Visual Basic for Application (VBA) Les procédures et les fonctions
ByRef - ByVal
Par défaut, les arguments sont de type ByRef ce qui signifie que, si une variable est passée
en argument, c’est sa référence qui est transmise. Autrement dit, si la variable est modifiée
dans la sous-procédure, elle le sera également dans la procédure d’appel.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 79 / 90
Visual Basic for Application (VBA) Les procédures et les fonctions
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 80 / 90
Visual Basic for Application (VBA) Les procédures et les fonctions
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 81 / 90
Visual Basic for Application (VBA) Les procédures et les fonctions
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 82 / 90
Visual Basic for Application (VBA) Les procédures et les fonctions
Les fonctions
La principale différence entre Sub et Function est qu’une fonction retourne une valeur.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 83 / 90
Visual Basic for Application (VBA) Les boites de dialogue
MsgBox - InputBox
MsgBox
C’est une boîte de dialogue pour afficher une information
Il peut être utilisé à la fois comme une procédure ou une fonction. Si vous avez besoin
de connaître le choix de l’utilisateur et donc obtenir une valeur en retour, utilisez
MsgBox en tant que fonction en ajoutant des () aux arguments.
InputBox
La fonction InputBox demande à l’utilisateur d’entrer une valeur dans une boîte de dialogue.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 84 / 90
Visual Basic for Application (VBA) Les boites de dialogue
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 85 / 90
Visual Basic for Application (VBA) Les formulaires et contrôles
UserForm
Pour ajouter un UserForm, procédez de la même manière que pour un nouveau module.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 86 / 90
Visual Basic for Application (VBA) Les formulaires et contrôles
UserForm
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 87 / 90
Visual Basic for Application (VBA) Les formulaires et contrôles
Une fenêtre des propriétés du formulaire s’ouvre (sinon l’ouvrir pour en faisant F4). Vous
pouvez modifier ses propriétés.
Titre du UserForm
Pour modifier le titre du UserForm, modifiez sa propriété Caption :
Dimension du UserForm
Pour modifier les dimensions de l’UserForm, modifiez ses propriétés Width et Height ou
redimensionnez le UserForm à la main : :
Lancer un UserForm
Pour lancer un UserForm à partir d’une
procédure, utilisez Show :
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 88 / 90
Visual Basic for Application (VBA) Les formulaires et contrôles
Les contrôles
Les contrôles sont les éléments (boutons, intitulés, zone de texte, cases à cocher, etc.) qui
peuvent être insérés sur un UserForm (ou sur une feuille Excel).
Les contrôles ont également toute une panoplie de propriétés et d’événements qui diffèrent
d’un contrôle à l’autre.
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 89 / 90
Visual Basic for Application (VBA) Les formulaires et contrôles
Komi Maza-Balo T. AYOLA Actuaire IA FranceChef service administratif et financierCNSS KARA (UK) Mousson 2022-2023 90 / 90