Notion de variables et de paramètres
Pour réaliser nos procédures, nous avons besoin de stocker des informations (tva, rayon, diamètre, ...). Ces données sont appelées variables.
Ces variables correspondent à des cases dans la mémoire RAM de l'ordinateur, elles englobent plusieurs informations :
Une adresse : &1000
Un nom : tva
Un contenu : 20
Un type : nombre
Définition : Adresse
L'adresse correspond à l'emplacement physique de la variable dans la mémoire de l'ordinateur.
Définition : Nom
Plutôt que d'appeler une variable par son adresse, on lui donne un nom afin de simplifier son utilisation.
Définition : Contenu
Le contenu d'une variable peut être un nombre, un caractère, un mot, un tableau...
Définition : Type
Avant d'utiliser une variable, on doit définir quel genre de contenu elle pourra traiter : des entiers, des réels, des caractères...
En VB, il existe différent types possibles :
String : chaîne de caractères
Byte : nombre entier compris entre 0 et 255
Integer : nombre entier compris entre –32768 et 32767
Long : nombre entier compris entre –2147483648 et 2147483647
Single : nombre réel compris entre –1,401298E-45 et –3,402823E38 1,401298E-45 et 3,402823E38
Double : nombre réel compris entre –1,79769373486232E308 et –4,94065645841247E-324
4,94065645841247E-324 et 1,79769373486232E308
Currency : nombre à virgule fixe avec 15 chiffres pour la partie entière et 4 pour la partie décimale compris entre –922337203685477,5808 et 922337203685477,5807
Boolean : Valeur booléenne
Date : date comprise entre le 1er janvier 100 et le 31 décembre 9999.
Variant : le type variant permet de définir des variables dont le type de contenu est indéterminé. La variable peut changer de type de contenu au cours de son existence.
Définition : Affectation
L'action de remplir une variable avec un contenu, s'appelle l'affectation.
a = 6
signifie que la variable de nom a reçoit le contenu 6.
Définition : Déclaration de variable
Pour déclarer une variable et lui affecter un type on utilise le mot clé Dim (Dimension) et le mot clé As.
Dim TVA As Single
Signifie que nous avons besoin d'une variable appelée TVA qui contiendra un nombre à virgule.
Définition : Paramètre
Un paramètre peut être résumé à une variable dont le contenu a été fourni à l'entrée de la procédure.
Par exemple dans Excel :
=sin(90)
signifie que l'on fourni à la fonction sin le contenu 90.
Le créateur de la fonction a certainement défini un paramètre degre dont le but est de conserver l'information 90 pour être utilisée dans son programme.
Function sin(degre As Single) As Single
Pour calculer un prix TTC, il vous faut un prix HT. Vous avez donc besoin d'un paramètre pht qui représente le prix hors taxe à convertir.
Function pttc(pht As Single) As Single
Signifie que la fonction retourne un nombre à virgule et attend un paramètre de type nombre à virgule.
Exemple : Exemple de code
Function pttc(pht As Single) As Single
Dim tva As Single
tva = 20
pttc = pht * (1 + tva / 100)
End Function
Remarque : Valeur de retour d'une fonction
Dans l'exemple le mot pttc correspond au nom de la fonction.
Mais, il est utilisé aussi comme une variable à l'intérieur de la fonction.
Le contenu de cette variable correspond à la valeur retournée par la fonction.
Remarque : Non Déclaration d'une variable
Si vous ne déclarez pas vos variables et le type de vos paramètres, VB le fait pour vous.
Les variables et les paramètres auront alors un type Variant qui occupe beaucoup de place mémoire.
Remarque : Affectation et utilisation
En principe, on doit initialiser une variable avant de pouvoir lire sa valeur.
Dans certain langage, si vous utilisez une variable sans l'avoir préalablement remplie son contenu n'est pas vide, il dépend du contenu initial de la RAM.
En VBA, les variables sont initialisées (0 pour des nombres, "" pour du texte).
Il est conseillé de prendre l'habitude d'initialiser soi-même ses variables.
Complément : Conversion
Les boites de dialogue retournent les variables sous forme de chaîne de caractères.
Pour éviter certain problème de typage, il est conseillé de convertir la chaîne dans le type attendu.
Fonctions de conversion :
CBool(expression)
CDate(expression)
CDbl(expression)
CDec(expression)
CInt(expression)
CLng(expression)
CObj(expression)
CShort(expression)
CSng(expression)