VBScript - Types de données

Décembre 2016

Le type de données Variant

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
  • ...

Les sous-types Variant

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

Connaître le type de données

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és à 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ées
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

Convertir les types de données

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écimale spécifié
Sgn Retourne un entier décrivant le signe d'un nombre

A voir également :

Ce document intitulé «  VBScript - Types de données  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.