Le type d'une variable correspond à la manière dont l'ordinateur
stocke la variable en mémoire, c'est-à-dire la succession de 0 et de 1
dans les cases mémoire.
VBScript comprend un type de données par défaut pouvant contenir des informations
différentes selon le contexte dans lequel il est utilisé. C'est-à-dire
que l'interpréteur traite différemment (et automatiquement) une variable
selon qu'on lui affecte une chaîne de caractères ou bien un nombre à
virgule. En fait, pour typer une variable, il suffit de lui affecter une valeur avec
la syntaxe spécifique au type que l'on veut lui donner. Ainsi:
- une chaîne de caractères est entourée de guillemets
- un nombre à virgule est constitué de chiffres et d'un point
- un nombre entier est constitué uniquement de chiffres
- ...
En réalité il existe de nombreux types de données pouvant correspondre
à des nombres de très grande taille, des valeurs booléennes (vrai ou faux),
des dates, ...
On parle alors de sous-types du type de données variant. En effet, par défaut
c'est l'interpréteur qui décide la manière de laquelle les données
sont typées, or il peut parfois être utile de choisir le type d'une variable.
Voici un tableau récapitulatif des sous-types de données:
Sous-type |
Description |
Empty |
Il s'agit de la valeur par défaut d'une variable, c'est-à-dire la valeur de la
variable lorsqu'elle n'a pas été initialisée |
Null |
Il s'agit de la valeur d'une variable lorsque son contenu est incorrect |
Boolean |
Contient la valeur True (vrai) ou False (faux) |
Byte |
Contient un nombre entier compris entre 0 et 255 |
Currency |
Contient une valeur pouvant aller de -922 337 203 685 477.5808 à 922 337 203 685 477.5807
Il s'agit d'un sous-type adapté aux grandes sommes financières |
Long |
Contient un entier long, dont la valeur est comprise entre -2 147 483 648 et 2 147 483 647 |
Single |
Contient un nombre à virgule, 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 |
Double |
Contient un nombre à virgule en double précision, dont la valeur est comprise entre
1,79769313486232E308 et -4,94065645841247E-324 pour les valeurs négatives ; de 4,94065645841247E-324
et 1,79769313486232E308 pour les valeurs positives. |
Date / Time |
Contient une date comprise entre le 1er Janvier 100 et le 31 Décembre 9999 |
String |
Contient une chaîne de caractères pouvant contenir plusieurs milliards de caractères |
Object |
Contient un objet quelconque |
Error |
Contient un identifiant d'erreur |
La fonction VarType permet de connaître le type de données
d'une variable passée en paramètre.
Des noms de constantes sont associées à chacune de ces valeurs
afin de faciliter la compréhension du type de données qu'elles
représentent.
Voici la liste de ces valeurs:
Valeur |
Nom de la constante |
Type de donnée |
0 |
vbEmpty |
Empty |
1 |
vbNull |
Null |
2 |
vbInteger |
Entier |
3 |
vbLong |
Long |
4 |
vbSingle |
Single (entier simple précision) |
5 |
vbDouble |
Double (entier double précision) |
6 |
vbCurrency |
Currency |
7 |
vbDate |
Date |
8 |
vbString |
Chaîne de caractères |
9 |
vbObject |
Objet |
10 |
vbError |
Error |
11 |
vbBoolean |
Booléen |
12 |
vbVariant |
Tableaux de Variant |
13 |
vbDataObject |
Objet quelconque |
17 |
vbByte |
Octet |
8192 |
vbArray |
Tableau |
Il est parfois utile de pouvoir changer le type d'une variable au cours de l'exécution
d'une application. On imagine volontiers qu'il peut être utile d'utiliser en tant que chaîne
de caractères une variable numérique à virgule sur laquelle on
fait des calculs précis. C'est pour cette raison que VBScript fournit de nombreuses fonctions de
conversion de données. Celles-ci permettent de transformer une variable de type quelconque en une
variable d'un type donné.
En voici la liste:
Nom de la fonction |
Description |
Asc |
Retourne le code ANSI du premier caractère d'une chaîne |
AscB |
Retourne le code ANSI binaire du premier caractère d'une chaîne |
AscW |
Retourne le code Unicode du premier caractère d'une chaîne |
Chr |
Retourne une chaîne composée de caractères ANSI |
ChrB |
Retourne une chaîne composée de caractères ANSI binaires |
ChrW |
Retourne une chaîne composée de caractèrese Unicode |
Cbool |
Retourne un booléen |
Cbyte |
Retourne la valeur convertie en Byte |
Cdate |
Retourne la valeur convertie en Date |
CDbl |
Retourne la valeur convertie en Double |
Cint |
Retourne la valeur convertie en Int |
CLng |
Retourne la valeur convertie en Long |
CSng |
Retourne la valeur convertie en Single |
CStr |
Retourne la valeur convertie en String |
Fix |
Retourne la partie entière d'un nombre |
Hex |
Retourne la valeur hexadécimale d'un nombre |
Int |
Retourne la partie entière d'un nombre |
Oct |
Retourne la valeur octale d'un nombre |
Round |
Arrondit un nombre au nombre de décimal spécifié |
Sgn |
Retourne un entier décrivant le signe d'un nombre |
|