On appelle structure conditonnelle les instructions qui permettent de tester
si une condition est vraie ou non, c'est-à-dire si la valeur de son expression vaut 0
ou 1 (VBScript associe le mot clé true à 1 et false à 0). Ces structures conditionnelles peuvent être
associées à des structures qui se répètent suivant la réalisation
de la condition, on appelle ces structures des structures de boucle
Une expression située sur une ligne du script est appelée instruction. Par exemple
a++; est une instruction.
Lorsque l'on veut regrouper plusieurs instructions, on peut créer ce que
l'on appelle un bloc, c'est-à-dire un ensemble d'instructions
sur plusieurs lignes.
Les instructions if,
et for, et select peuvent par exemple être suivies d'un bloc d'instructions
à exécuter...
L'instruction if .. then est la structure de test la plus basique, on la retrouve dans tous les langages
(avec une syntaxe différente...). Elle permet d'exécuter une série d'instruction
si jamais une condition est réalisée.
La syntaxe de cette expression est la suivante:
if condition then instruction
Lorsqu'une instruction if est suivie de plusieurs instructions, il
est essentiel de terminer la série d'instructions par le mot-clé End If.
La syntaxe est la suivante:
if condition then
instruction1
instruction2
...
End If
Remarques:
L'instruction if dans sa forme basique ne permet de tester qu'une condition, or la plupart
du temps on aimerait pouvoir choisir les instructions à exécuter en cas de non réalisation
de la condition...
L'expression if .. then .. else permet d'exécuter une autre série d'instruction en cas
de non-réalisation de la condition.
La syntaxe de cette expression est la suivante:
if condition then
liste d'instructions
else
autre série d'instructions
End If
L'instruction if ... else ne permet de tester qu'une condition, or il est
parfois nécessaire de tester plusieurs conditions de
façon exclusive, c'est-à-dire que sur toutes les conditions une seule
sera réalisée ...
L'expression if ... elseif ... else permet d'enchaîner une série d'instructions
et évite d'avoir à imbriquer des instructions if.
La syntaxe de cette expression est la suivante:
if condition then
liste d'instructions
elseif autre_condition
autre série d'instructions
...
else
derniere série d'instructions
End If
L'instruction Select Case permet de faire plusieurs tests de valeurs sur le contenu
d'une même variable. Ce branchement conditionnel simplifie beaucoup le test de plusieurs
valeurs d'une variable, car cette opération aurait été compliquée
(mais possible) avec des if imbriqués. Sa syntaxe est la suivante:
Select Case (Expression)
Case Valeur1:
Liste d'instructions
Case Valeur2:
Liste d'instructions
Case Valeur...:
Liste d'instructions
Case Else
Liste d'instructions
End Select
Lorsque l'expression
testée est égale à une des valeurs suivant un case, la liste d'instruction
qui suit celui-ci est exécuté.
Le mot clé Case Else précède la liste d'instructions
qui sera exécutée si l'expression n'est jamais égale à une des valeurs.
Les boucles sont des structures qui permettent d'exécuter plusieurs fois la même
série d'instructions jusqu'à ce qu'une condition ne soit plus réalisée...
On appelle parfois ces structures "instructions répétitives" ou bien "itérations".
La façon la plus commune de faire une boucle, est de créer un compteur (une variable
qui s'incrémente, c'est-à-dire qui augmente de 1 à chaque tour de boucle) et de faire
arrêter la boucle lorsque le compteur dépasse une certaine valeur.
L'instruction for permet d'exécuter plusieurs fois la même série
d'instructions: c'est une boucle!
Dans sa syntaxe, il suffit de préciser le nom de la variable qui sert de compteur,
sa valeur de départ, celle de fin (c'est-à-dire celle pour laquelle la boucle s'arrête)
et le pas des incrémentations (ou décrémentations).
La syntaxe de cette expression est la suivante:
for compteur = Début To Fin [Pas Valeur]
liste d'instructions
Next [compteur]
Par exemple:
for i = 1 To 5
Print i
Next
Cette boucle affiche 5 fois la valeur de i, c'est-à-dire 1,2,3,4,5
Elle commence à i=1, vérifie que i est bien inférieur à 6,
etc... jusqu'à atteindre la valeur i=6, pour laquelle la condition ne sera plus réalisée,
la boucle s'interrompra et le programme continuera son cours.
|
- Le pas peut être positif ou négatif
- une instruction Print dans votre boucle est un bon moyen pour vérifier la valeur du compteur pas à pas en l'affichant!
- Si le pas est positif, la valeur de départ doit être plus petite que celle de fin
- Si le pas est négatif, la valeur de départ doit être plus grande que celle de fin
- il faut bien compter le nombre de fois que l'on veut faire exécuter la boucle:
- for i=0 to 10 exécute 11 fois la boucle (i de 0 à 10)
- for i=1 To 10 exécute 10 fois la boucle (i de 1 à 10)
|
L'instruction Do While .. Loop (généralement appelée while dans les autres langages)
représente un autre moyen d'exécuter plusieurs fois la même série
d'instructions.
La syntaxe de cette expression est la suivante:
Do While condition
liste d'instructions
Loop
Cette instruction exécute la liste d'instructions tant que (do while est un mot anglais qui signifie faire tant que)
la condition est réalisée.
|
La condition de sortie pouvant être n'importe quelle structure conditionnelle, les risques de boucle infinie
(boucle dont la condition est toujours vraie) sont grands, c'est-à-dire qu'elle risque de provoquer un plantage
de ActiveXTM Scripting!
|
Il existe une autre façon d'utiliser ce type de boucle, elle consiste à effectuer le test de la
condition en sortie de boucle, ce qui signifie que les instructions contenues dans le corps de la boucle seront exécutées
au moins une fois. Voici la syntaxe de cette structure alternative:
Do
liste d'instructions
Loop While condition
L'instruction For Each est similaire à l'instruction For
en ce sens qu'elle permet de répéter une série d'instructions
non plus en fonction d'une valeur qui s'incrémente (ou se dédrémente)
mais en fonction d'une série de valeurs contenues dans un objet ou bien
un tableau.
La syntaxe de cette expression est la suivante:
For Each Valeur In Valeurs
liste d'instructions
Next Element
CE type de structure est particulièrement utile pour parcourir
les différents éléments d'un tableau (ou d'une collection d'objets)
dont on ne connait pas le nombre d'éléments.
VBScript autorise l'utilisation de la commande exit, qui permet d'interrompre totalement
l'interprétation du script, ce qui signifie que l'application s'arrête:
le script est figé dans son état actuel. cette instruction est particulièrement
utile lors de l'apparition d'erreurs!
|