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
Excel VBA : les types de variables
Il existe dans Excel VBA différents types de variables. Variables de type Boolean ne peuvent avoir que 2 valeurs : True et False ; elles sont codées sur 2 octets. Variables numériques Byte : valeurs entières de l’intervalle [0;255] ; elles sont codées sur 1 octet. Integer : valeurs entières de l’intervalle [-32768;32767] ; elles […]
Excel VBA : les procédures Visual Basic
Les procédures Sub La syntaxe générale est la suivante : [Private][Public]Sub <Nom de la fonction>([argument1], [argument2], …) Instructions End Sub L’appel d’une procédure Sub, à partir d’une procédure initiale, se fait au moyen de l’instruction Call: Call <Nom de la fonction>([argument1], [argument2], …) Les procédures Function Les procédures Function sont des procédures qui retournent des […]
Excel VBA : stocker une formule dans une cellule ou une plage de cellules
Range(« B2 »).Formula = « =C3 » stocke la formule =C3 dans la cellule B2. Range(« B1:B25 »).Formula = « =E1 » stocke la formule =E1 dans B1, =E2 dans B2, etc. (adressage relatif) Range(« B1:B25 »).Formula = « =E$1 » stocke la formule =E$1 dans B1, B2, etc. (adressage semi-absolu) Range(« B1 »).Formula = « =LEFT(A1;2) » stocke la formule =GAUCHE(A1;2) dans la cellule B1 Range(« B2:C3 »).FormulaR1C1 = « =R4C5 » stocke dans […]
Excel VBA : stocker des formules ou des valeurs dans des cellules ou des plages de cellules
Stocker une valeur dans une cellule Excel : .Value = Donner la valeur du contenu d’une cellule à une variable : = .Value
Excel VBA : quelques propriétés
Column renvoie le numéro de la colonne (1 pour la colonne A, 2 pour B, etc.) Exemple : Range(« B6 »).Column renvoie le nombre 2. Count renvoie le nombre d’élément d’une collection. Exemple : Range(« A1:B3 »).Cells.Count renvoie le nombre 6. Exemple : Range(« A1:B3 »).Columns.Count renvoie le nombre 2. Name désigne le nom d’une plage. Exemple : Range(« A1:B3 »).Name = « UnePlage » […]
Excel VBA : sélection par adressage indirect avec Range
Range(« A1 »).Offset(3,4).Select sélectionne la cellule qui se trouve 3 lignes plus bas et 4 colonnes à droite de la cellule A1, soit la cellule E5. Range(« A1:D4 »).Offset(3,4).Select sélectionne la plage de cellules E4:H8. Range(« B2 »).Activate ActiveCell.Offset(2,2).Select sélectionne la cellule D4. Range(« A1:D4 »).Resize(2,3).Select sélectionne la plage de cellules A1:B2. Range(« A1:D4 »).EntireRow.Select sélectionne les lignes de 1 à 4. Range(« B2:F5 »).Range(« A1 »).Select sélectionne la […]
Excel VBA : sélection par adressage direct au moyen des propriétés Rows et Columns
Rows.Select sélectionne l’ensemble des lignes d’une feuille de calcul, et donc la feuille de calcul toute entière. Rows(2).Select sélectionne la ligne 2. Rows(« 2:4 ») sélectionne les lignes de 2 à 4. Columns.Select sélectionne l’ensemble des colonnes d’une feuille de calcul, et donc la feuille de calcul toute entière. Columns(2).Select ou Columns(« B ») sélectionne la deuxième colonne, c’est-à-dire […]