VBA Excel : quelques éléments de base du langage

Prenons l’exemple de la macro Toto, qui écrit le mot « Toto » dans la cellule active : Sub Toto() ‘ Macro qui écrit le mot Toto dans la cellule active ActiveCell.FormulaR1C1 = « Toto » End Sub Une macro commence par le mot Sub, suivi d’un espace, puis du nom de la macro qui, lui, ne doit pas […]

Excel VBA : Déclaration de variables

Un nom de variable ne doit pas être un mot réservé tel que Cell, Worksheet, Column, Row, ni contenir des espaces ni des « tiret du 6 » (-) ; en revanche, le « tiret du 8 » (_), ou l « underscore », ou encore le « souligné » est autorisé. On peut rendre la déclaration des variables obligatoire : Visual Basic […]

VBA Excel : renommer un module

Le premier réflexe est de faire, dans la Fenêtre Projet de l’Environnement VBA, un clic droit sur le module, puis de chercher l’option Renommer ; en vain, cette possibilité n’existe pas. Il faut sélectionner le module en question, puis afficher la Fenêtre Propriétés (icône de la petite main tenant une étiquette dans la barre d’outils) […]

Excel VBA : Déclaration de variables

Règles pour les noms de variables Un nom de variable ne doit pas être un mot réservé tel que Cell, Worksheet, Column, Row, contenir des espaces ni des « tiret du 6 » (-) Un nom de variable peut en revanche : contenir le « tiret du 8 » (_), dit encore l « underscore », ou le « souligné » La déclaration […]

Excel VBA : structures de décision

Il y a fondamentalement 2 structures de décision : la commande If qui peut prendre plusieurs formes la commande Select Case À noter qu’il existe également la fonction IIf ; son utilisation est illustrée par l’exemple suivant : Remise = IIf(Qté >= 500, 10%, 0) If… Then… If <Condition> Then <Instruction> [:<Instruction>] Très pratique pour […]

Excel VBA : structures de contrôle – boucles

For… Next For <Compteur> = <Début> To <Fin> [Step <Pas>]    Instructions Next [<Compteur>] For Each… Next For Each <Variable> = <Début> In <Collection>    Instructions Next [<Variable>] While… Wend While <Condition>    Instructions Wend Do… Loop Do    Instructions Loop Until|While [<Condition>] Exit, GoTo Exit GoTo