|
Microsoft® Visual Basic® Scripting Edition Utilisation des instructions conditionnelles |
Didacticiel VBScript Précédent | Suivant |
Vous pouvez contrôler le déroulement de votre script à l'aide d'instructions conditionnelles et d'instructions de boucle. Les instructions conditionnelles vous permettent d'écrire du code VBScript qui prend des décisions et répète des actions. Les instructions conditionnelles suivantes sont disponibles dans VBScript :
- Instruction If...Then...Else
- Instruction Select Case
L'instruction If...Then...Else vous permet d'évaluer si une condition a pour valeur True (vraie) ou False (fausse) et, en fonction du résultat, de spécifier une ou plusieurs instructions à exécuter. En général, la condition est une expression qui utilise un opérateur de comparaison pour comparer une valeur ou une variable avec une autre. Pour des informations sur les opérateurs de comparaison, reportez-vous à Opérateurs de comparaison. Il est possible d'imbriquer les instructions If...Then...Else sur autant de niveaux que nécessaire.
Sub MajDate()
Dim maDate
maDate = #2/13/95#
If maDate < Now Then maDate = Now
End Sub
Pour exécuter plusieurs lignes de code, vous devez utiliser la syntaxe multiligne (ou syntaxe de bloc). Cette syntaxe comprend l'instruction End If comme le montre l'illustration ci-dessous :
Sub AlerterUtilisateur(valeur)
If valeur = 0 Then
AlertLabel.ForeColor = vbRed
AlertLabel.Font.Bold = True
AlertLabel.Font.Italic = True
End If
End Sub
Sub AlerterUtilisateur(valeur)
If valeur = 0 Then
AlertLabel.ForeColor = vbRed
AlertLabel.Font.Bold = True
AlertLabel.Font.Italic = True
Else
AlertLabel.Forecolor = vbBlack
AlertLabel.Font.Bold = False
AlertLabel.Font.Italic = False
End If
End Sub
Sub AfficherValeur(value)
If value = 0 Then
MsgBox valeur
ElseIf value = 1 Then
MsgBox valeur
ElseIf value = 2 Then
Msgbox valeur
Else
Msgbox "Valeur hors limites!"
End If
Vous pouvez ajouter autant de clauses ElseIf que nécessaire pour créer des alternatives. Mais une utilisation extensive des clauses ElseIf peut devenir complexe. L'instruction Select Case constitue le meilleur moyen de choisir entre plusieurs alternatives.
La structure Select Case offre une alternative à If...Then...ElseIf pour exécuter de façon sélective un bloc d'instructions parmi plusieurs. Une instruction Select Case offre les mêmes possibilités que If...Then...Else, mais rend le code plus efficace et plus lisible.Une structure Select Case fonctionne avec une seule expression de test, évaluée une fois, au début de la structure. Le résultat de l'expression est ensuite comparé avec les valeurs de chaque bloc Case de la structure. Lorsqu'il y a correspondance, le bloc d'instructions Case concerné s'exécute :
Remarquez que la structure Select Case évalue l'expression une fois au début de la structure. Par contre, la structure If...Then...ElseIf peut évaluer une expression différente pour chaque instruction ElseIf. Vous pouvez remplacer une structure If...Then...ElseIf par une structure Select Case uniquement si chaque instruction ElseIf évalue la même expression.Select Case Document.Form1.CardType.Options(SelectedIndex).Text Case "MasterCard" AfficherLogoMC ValiderCompteMC Case "Visa" AfficherLogoVisa ValiderCompteVisa Case "American Express" AfficherLogoAMEXCO ValiderCompteAMEXCO Case Else AfficherInconnue Redemander End Select