bonjour Jean Michel
Je ne suis pas un spécialiste de ce sujet et la pedagogie n'est pas la premiere de mes qualités , mais j'espere tout de meme que les informations ci dessous pourront t'aider .
Les variables servent à enregistrer temporairement des données dans une macro .
par exemple affecter un texte (coucou le forum xld ! ) à une variable(MaVariable) , et l'afficher dans un Msgbox
Option Explicit
Sub AfficherMessage()
Dim MaVariable As String
MaVariable = "coucou le forum xld ! "
MsgBox MaVariable
End Sub
Ces données peuvent etre modifiées en cours d'execution de la macro .
par exemple affecter un nombre à une variable , l'afficher dans une Msgbox , ajouter la valeur de la cellule A1 à cette variable , puis afficher le nouveau resultat
Sub AfficherValeur()
Dim MaVariable As Integer
MaVariable = 10
MsgBox MaVariable
MaVariable = 10 + Range("A1")
MsgBox MaVariable
End Sub
Une variable possede :
un nom qui permet d'acceder aux donnees qu'elle contient :"MaVariable"
et un type de données qu'elle contient : String et Integer dans les exemples ci dessus
Le type de données doit etre défini en fonction de la valeur prise par la variable .
Chaque type de donnée utilise un espace mémoire ( de 1 octet pour les types de données Byte jusqu'à 22 octets et plus , pour les types de données Variant . Il est donc important de définir le bon type de données pour libérer de l'espace mémoire et ne pas ralentir inutilement le traitement de la macro .
Les types de données ( informations issues de l'aide en ligne Excel )
Byte :
utilisé pour stocker des nombres entiers positifs compris entre 0 et 255.
Les variables de type Byte sont stockées sous la forme de nombres uniques codés sur 8 bits (1 octet), sans signe .
Boolean :
données pouvant prendre exclusivement les valeurs True (-1) et False (0).
Les variables Boolean sont stockées sous la forme de nombres codés sur 16 bits (2 octets).
Integer :
données contenant des nombres entiers stockés sous forme d'entiers de 2 octets compris entre -32 768 et 32 767.
Le type de données Integer permet également de représenter des valeurs énumérées. Dans Visual Basic, le signe % est le caractère de déclaration du type Integer .
Long :
Nombre entier codé sur 4 octets(32 bits) et dont la valeur est comprise entre -2 147 483 648 et 2 147 483 647.
Dans Visual Basic, le signe et commercial (&) est le caractère de déclaration du type Long.
Currency :
données stockées sous la forme de nombres de 64 bits (8 octets) au format entier, dont la plage de valeurs s'étend de -922 337 203 685 477,5808 à 922 337 203 685 477,5807.
Ce type de données est utilisé dans les calculs monétaires ou dans les calculs à virgule fixe pour lesquels une grande précision est requise. Le signe @ est le caractère de déclaration du type Currency.
Single :
Type de données qui regroupe des variables à virgule flottante en simple précision
sous forme de nombres à virgule flottante codés sur 32 bits (4 octets),dont la valeur est comprise entre -3,402823E38 et -1,401298E-45 pour les valeurs négatives ,et entre 1,401298E-45 et 3,402823E38 pour les valeurs positives.
Dans Visual Basic, le point d'exclamation (!) est le caractère de déclaration du type Single.
Double :
Type de données stockant sur 64 bits les nombres à virgule flottante en double précision compris entre -1,79769313486231E308 et -4,94065645841247E-324 pour les valeurs négatives, et entre 4,94065645841247E-324 et 1,79769313486232E308 pour les valeurs positives.
Dans Visual Basic, le signe dièse (#) est le caractère de déclaration du type Double.
Date :
Type de données utilisé pour stocker les dates et les heures sous la forme d'un nombre réel codé sur 64 bits (8 octets). La partie située à gauche du séparateur décimal représente la date, et la partie droite l'heure.
String :
Type de données composé d'une séquence de caractères contigus interprétés en tant que caractères et non en tant que valeurs numériques.
Une donnée de type String peut inclure lettres, nombres, espaces et signes de ponctuation.
Le type de données String peut stocker des chaînes de longueur fixe dont la longueur est comprise entre 0 et environ 63 Ko de caractères et des chaînes dynamiques dont la longueur est comprise entre 0 et environ 2 milliards de caractères.
Dans Visual Basic, le signe dollar ($) est le caractère de déclaration du type String.
Object :
Type de données représentant toute référence Object. Les variables Object sont stockées sous forme d'adresses codées sur 32 bits (4 octets) faisant référence à des objets.
Variant :
Type de données particulier pouvant contenir des données numériques, des chaînes ou des dates, des types définis par l'utilisateur ainsi que les valeurs spéciales Empty et Null.
Le type de données Variant est doté d'une taille de stockage numérique de 16 octets et peut contenir la même plage de données que le type Decimal, ou d'une taille de stockage de caractère de 22 octets (plus la longueur de la chaîne) ; dans ce dernier cas, il peut stocker tout texte.
IMPORTANT :
Toutes les variables sont converties en type Variant si aucun autre type de données n'est explicitement déclaré.
TRES IMPORTANT :
En cas de déclaration de plusieurs variables avec le meme Dim , il faut indiquer le type de donnee pour chaque variable .
Si pour definir les variables Xld1 , Xld2 et Xld3 vous écrivez par exemple :
Dim Xld1 , Xld2 , Xld3 As String
Dans ce cas Xld1 et Xld2 seront de type Variant . Pour y remédier Il faut écrire :
Dim Xld1 As String , Xld2 As String , Xld3 As String
Option Explicit
Inserez l'instruction Option Explicit en tout début de procédure .
Grâce à cette instruction, vous aurez un message d’erreur pour toute variable non définie, ou mal orthographiée.
Il est conseillé d'avoir une majuscule dans la variable déclarée : Ensuite lors de la saisie de la variable dans la macro , celle-ci reprendra automatiquement la majuscule : cela permet de vérifier les fautes d'orthographe éventuelles .
Pour qu'Option Explicit s'insère automatiquement dans chaque nouveau classeur :
Aller dans visual Basic Editor
Menu Outils
Options
Dans l'onglet Editeur , cocher l'option "Déclaration Explicite des variables"
Les niveaux de variables
Une Variable déclarée à l'interieur d'une macro ne sera utilisable qu'à l'interieur de celle-ci :
Sub Test()
Dim Xld As String
Xld= "Coucou ! "
Msgbox Xld
End Sub
Pour que la variable soit utilisable dans toutes macros du module ,
celle-ci doit etre déclaréee avant le Sub :
Dim Xld As String
Sub Test()
…
End Sub
Pour que la variable soit utilisable pour toutes les macros du projet il faut utiliser l'instruction Public :
Public Xld As String
Sub Test()
…
End Sub
Les fonctions de conversion de types de données
CBool(expression)
CByte(expression)
CCur(expression)
CDate(expression)
CDbl(expression)
CDec(expression)
CInt(expression)
CLng(expression)
CSng(expression)
CStr(expression)
CVar(expression)
Consulter l'aide en ligne Excel pour obtenir plus d'informations sur chacune de ces fonctions .
tu peux retrouver ces informations en suivant le lien ci dessous :
Wiki Page 3
( il faut relancer deux fois le lien pour aceder à la page )
bonne journée
michel