VBScript - Guide rapide

VBScript signifie Visual Basic Scripting qui forme un sous-ensemble de Visual Basic pour Applications (VBA). VBA est un produit de Microsoft qui est inclus non seulement dans d'autres produits Microsoft tels que MS Project et MS Office, mais également dans des outils tiers tels que AUTO CAD.

Caractéristiques de VBScript

  • VBScript est un langage de script léger, doté d'un interpréteur ultra-rapide.

  • VBScript, pour la plupart, est insensible à la casse. Il a une syntaxe très simple, facile à apprendre et à mettre en œuvre.

  • Contrairement à C ++ ou Java, VBScript est un langage de script basé sur des objets et PAS un langage de programmation orienté objet.

  • Il utilise le modèle d'objet composant (COM) afin d'accéder aux éléments de l'environnement dans lequel il s'exécute.

  • L'exécution réussie de VBScript ne peut se produire que si elle est exécutée dans un environnement hôte tel qu'Internet Explorer (IE), Les services de l'information de l'Internet (IIS) et hôte de script Windows (WSH)

VBscript - Historique des versions et utilisations

VBScript a été introduit par Microsoft en 1996 et sa première version était 1.0. La version stable actuelle de VBScript est la 5.8, qui est disponible avec IE8 ou Windows 7. Les zones d'utilisation de VBScript sont nombreuses et ne sont pas limitées à la liste ci-dessous.

  • VBScript est utilisé comme langage de script dans l'un des outils de test d'automatisation populaires - Quick Test Professional en abrégé QTP

  • Windows Scripting Host, qui est principalement utilisé par les administrateurs système Windows pour automatiser le bureau Windows.

  • Pages serveur actives (ASP), un environnement de script côté serveur pour la création de pages Web dynamiques utilisant VBScript ou Java Script.

  • VBScript est utilisé pour les scripts côté client dans Microsoft Internet Explorer.

  • Microsoft Outlook Forms s'exécute généralement sur VBScript; cependant, la programmation au niveau de l'application repose sur VBA (à partir d'Outlook 2000).

Désavantages

  • VBscript est utilisé uniquement par les navigateurs IE. D'autres navigateurs tels que Chrome, Firefox DONOT prennent en charge VBScript. Par conséquent, JavaScript est préféré à VBScript.

  • VBScript a un support de ligne de commande limité.

  • Puisqu'il n'y a pas d'environnement de développement disponible par défaut, le débogage est difficile.

Où est VBScript aujourd'hui?

La version actuelle de VBScript est 5.8, et avec le développement récent du framework .NET, Microsoft a décidé de fournir une prise en charge future de VBScript dans ASP.NET pour le développement Web. Par conséquent, il n'y aura plus de nouvelles versions du moteur VBScript, mais l'ensemble des correctifs de défauts et des problèmes de sécurité sont traités par l'équipe d'ingénierie de Microsoft. Cependant, le moteur VBScript serait livré avec tous les Microsoft Windows et IIS par défaut.

Votre premier VBScript

Écrivons un VBScript pour imprimer "Hello World".

<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         document.write("Hello World!")
      </script>
   </body>
</html>

Dans l'exemple ci-dessus, nous avons appelé une fonction document.write , qui écrit une chaîne dans le document HTML. Cette fonction peut être utilisée pour écrire du texte, du HTML ou les deux. Ainsi, le code ci-dessus affichera le résultat suivant -

Hello World!

Espaces blancs et sauts de ligne

VBScript ignore les espaces, les tabulations et les retours à la ligne qui apparaissent dans les programmes VBScript. On peut utiliser des espaces, des tabulations et des retours à la ligne librement dans le programme, vous êtes donc libre de formater et d'indenter vos programmes d'une manière ordonnée et cohérente qui rend le code facile à lire et à comprendre.

Mise en page

VBScript est basé sur Visual Basic de Microsoft. Contrairement à JavaScript, aucun terminateur d'instruction tel que le point-virgule n'est utilisé pour terminer une instruction particulière.

Syntaxe sur une seule ligne

Les deux points sont utilisés lorsque deux ou plusieurs lignes de VBScript doivent être écrites sur une seule ligne. Par conséquent, dans VBScript, Colons agit comme un séparateur de ligne.

<script language = "vbscript" type = "text/vbscript">
   var1 = 10 : var2 = 20
</script>

Syntaxe sur plusieurs lignes

Lorsqu'une instruction dans VBScript est longue et si l'utilisateur souhaite la diviser en plusieurs lignes, l'utilisateur doit utiliser le trait de soulignement "_". Cela améliore la lisibilité du code. L'exemple suivant illustre comment travailler avec plusieurs lignes.

<script language = "vbscript" type = "text/vbscript">
   var1 = 10 
   var2 = 20
   Sum = var1 + var2  
   document.write("The Sum of two numbers"&_"var1 and var2 is " & Sum)
</script>

Mots réservés

La liste suivante montre les mots réservés dans VBScript. Ces mots réservés NE DEVRAIENT PAS être utilisés comme une constante ou une variable ou tout autre nom d'identifiant.

Boucle LSet Moi
Mod Nouveau Prochain
ne pas Rien Nul
Sur Option Optionnel
Ou ParamArray Préserver
Privé Publique RaiseEvent
ReDim Rem CV
RSet Sélectionner Ensemble
partagé Célibataire Statique
Arrêtez Sous ensuite
À Vrai Type
Et Comme Booléen
ByRef Octet ByVal
Appel Cas Classe
Const Devise Déboguer
Faible Faire Double
Chaque Autre Sinon
Vide Fin Fin si
Enum Eqv un événement
Sortie Faux Pour
Fonction Avoir Aller à
Si Lutin Met en oeuvre
Dans Entier Est
Laisser Comme Longue
Type de Jusqu'à Une variante
Wend Tandis que Avec
Xor Eval Exécuter
Msgbox Effacer ExécuterGlobal
Option explicite Randomiser SendKeys

Sensibilité à la casse

VBScript est un case-insensitive language. Cela signifie que les mots-clés de langue, les variables, les noms de fonction et tout autre identificateur n'ont PAS besoin d'être tapés avec une majuscule cohérente des lettres. Ainsi, les identificateurs int_counter, INT_Counter et INT_COUNTER ont la même signification dans VBScript.

Commentaires dans VBScript

Les commentaires sont utilisés pour documenter la logique du programme et les informations utilisateur avec lesquelles d'autres programmeurs peuvent travailler de manière transparente sur le même code à l'avenir. Il peut inclure des informations telles que développées par, modifiées par et il peut également inclure une logique incorporée. Les commentaires sont ignorés par l'interpréteur lors de l'exécution. Les commentaires dans VBScript sont indiqués par deux méthodes.

1. Any statement that starts with a Single Quote (‘) is treated as comment.

Voici l'exemple -

<script language = "vbscript" type = "text/vbscript">
   <!—
      ' This Script is invoked after successful login
      ' Written by : TutorialsPoint
      ' Return Value : True / False
   //- >
</script>

2. Any statement that starts with the keyword “REM”.

Voici l'exemple -

<script language = "vbscript" type = "text/vbscript">
   <!—
      REM This Script is written to Validate the Entered Input
      REM Modified by  : Tutorials point/user2
   //- >
</script>

Tous les navigateurs modernes ne prennent pas en charge VBScript. VBScript est pris en charge uniquement par Internet Explorer de Microsoft, tandis que les autres navigateurs (Firefox et Chrome) ne prennent en charge que JavaScript. Par conséquent, les développeurs préfèrent normalement JavaScript à VBScript.

Bien qu'Internet Explorer (IE) prenne en charge VBScript, vous devrez peut-être activer ou désactiver cette fonctionnalité manuellement. Ce didacticiel vous informera de la procédure d'activation et de désactivation de la prise en charge de VBScript dans Internet Explorer.

VBScript dans Internet Explorer

Voici des étapes simples pour activer ou désactiver VBScript dans votre Internet Explorer -

  • Suivez Outils → Options Internet dans le menu

  • Sélectionnez l'onglet Sécurité dans la boîte de dialogue

  • Cliquez sur le bouton Niveau personnalisé

  • Faites défiler jusqu'à ce que vous trouviez l'option de script

  • Sélectionnez le bouton radio Activer sous Script actif

  • Enfin cliquez sur OK et sortez

Pour désactiver la prise en charge de VBScript dans votre Internet Explorer, vous devez sélectionner le bouton radio Désactiver sousActive scripting.

Placement VBScript dans un fichier HTML

Il y a une flexibilité donnée pour inclure du code VBScript n'importe où dans un document HTML. Mais la manière la plus préférée d'inclure VBScript dans votre fichier HTML est la suivante -

  • Script dans la section <head> ... </head>.

  • Script dans la section <body> ... </body>.

  • Script dans les sections <body> ... </body> et <head> ... </head>.

  • Script dans un fichier externe et ensuite inclure dans la section <head> ... </head>.

Dans la section suivante, nous verrons comment nous pouvons mettre VBScript de différentes manières -

VBScript dans la section <head> ... </head>

Si vous souhaitez exécuter un script sur un événement, par exemple lorsqu'un utilisateur clique quelque part, vous placerez ce script dans la tête comme suit -

<html>
   <head>
      <script type = "text/Vbscript">
         <!--
            Function sayHello() 
               Msgbox("Hello World")
            End Function
         //-->
      </script>
   </head>
   
   <body>
      <input type = "button" onclick = "sayHello()" value = "Say Hello" />
   </body>
</html>

Il produira le résultat suivant - Un bouton avec le nom SayHello. En cliquant sur le bouton, la boîte de message est affichée à l'utilisateur avec le message "Hello World".

VBScript dans la section <body> ... </body>

Si vous avez besoin d'un script à exécuter pendant le chargement de la page afin que le script génère du contenu dans la page, le script va dans la partie <body> du document. Dans ce cas, vous n'auriez aucune fonction définie à l'aide de VBScript -

<html>
   <head> </head>
   <body>
      <script type = "text/vbscript">
         <!--
            document.write("Hello World")
         //-->
      </script>
      <p>This is web page body </p>
   </body>
</html>

Cela produira le résultat suivant -

Hello World
This is web page body

VBScript dans les sections <body> et <head>

Vous pouvez mettre votre code VBScript dans la section <head> et <body> comme suit -

<html>
   <head>
      <script type = "text/vbscript">
         <!--
            Function sayHello() 
               msgbox("Hello World")
            End Function
         //-->
      </script>
   </head>
   
   <body>
      <script type = "text/vbscript">
         <!--
         document.write("Hello World")
         //-->
      </script>
      <input type = "button" onclick = "sayHello()" value = "Say Hello" />
   </body>
</html>

Il produira le résultat suivant - un message Hello World avec un bouton «Say Hello». En cliquant sur le bouton, une boîte de message avec un message "Hello World" s'affiche à l'utilisateur.

Hello World 

VBScript dans un fichier externe

Au fur et à mesure que vous commencez à travailler plus intensivement avec VBScript, vous constaterez probablement qu'il y a des cas où vous réutilisez un code VBScript identique sur plusieurs pages d'un site. Vous n'êtes pas limité à conserver un code identique dans plusieurs fichiers HTML.

La balise script fournit un mécanisme pour vous permettre de stocker VBScript dans un fichier externe, puis de l'inclure dans vos fichiers HTML. Voici un exemple pour montrer comment vous pouvez inclure un fichier VBScript externe dans votre code HTML en utilisant la balise script et son attribut src -

<html>
   <head>
      <script type = "text/vbscript" src = "filename.vbs" ></script>
   </head>
   <body>
      .......
   </body>
</html>

Pour utiliser VBScript à partir d'une source de fichier externe, vous devez écrire tout votre code source VBScript dans un simple fichier texte avec l'extension ".vbs", puis inclure ce fichier comme indiqué ci-dessus. Par exemple, vous pouvez conserver le contenu suivant dans le fichier filename.vbs, puis utiliser la fonction sayHello dans votre fichier HTML après avoir inclus le fichier filename.vbs.

Function sayHello()
   Msgbox "Hello World"
End Function

Placement VBScript dans QTP

VBScript est placé dans l'outil QTP (Quick Test Professional) mais il n'est PAS inclus dans des balises HTML. Le fichier de script est enregistré avec l'extension .vbs et il est exécuté par le moteur d'exécution de Quick Test Professional.

Variables VBScript

Une variable est un emplacement mémoire nommé utilisé pour contenir une valeur qui peut être modifiée lors de l'exécution du script. VBScript a seulementONE type de données fondamental, Variant.

Rules for Declaring Variables −

  • Le nom de la variable doit commencer par un alphabet.

  • Les noms de variable ne peuvent pas dépasser 255 caractères.

  • Les variables ne doivent PAS contenir de point (.)

  • Les noms de variable doivent être uniques dans le contexte déclaré.

Déclaration de variables

Les variables sont déclarées à l'aide du mot-clé «dim». Puisqu'il n'y a qu'un seul type de données fondamental, toutes les variables déclarées sont variantes par défaut. Par conséquent, un utilisateurNEED NOT mentionner le type de données lors de la déclaration.

Example 1 - Dans cet exemple, IntValue peut être utilisé comme une chaîne, un entier ou même des tableaux.

Dim Var

Example 2 - Deux déclarations ou plus sont séparées par une virgule (,)

Dim Variable1,Variable2

Attribution de valeurs aux variables

Les valeurs sont affectées de la même manière qu'une expression algébrique. Le nom de la variable sur le côté gauche suivi d'un symbole égal à (=), puis sa valeur sur le côté droit.

Règles

  • Les valeurs numériques doivent être déclarées sans guillemets.

  • Les valeurs de chaîne doivent être placées entre guillemets (")

  • Les variables de date et d'heure doivent être placées entre le symbole de hachage (#)

Exemples

' Below Example, The value 25 is assigned to the variable.
Value1 = 25

' A String Value ‘VBScript’ is assigned to the variable StrValue.
StrValue = “VBScript”

' The date 01/01/2020 is assigned to the variable DToday.
Date1 = #01/01/2020#

' A Specific Time Stamp is assigned to a variable in the below example.
Time1 = #12:30:44 PM#

Portée des variables

Les variables peuvent être déclarées à l'aide des instructions suivantes qui déterminent la portée de la variable. La portée de la variable joue un rôle crucial lorsqu'elle est utilisée dans une procédure ou des classes.

  • Dim
  • Public
  • Private

Faible

Les variables déclarées à l'aide du mot-clé «Dim» au niveau de la procédure ne sont disponibles que dans la même procédure. Les variables déclarées à l'aide du mot-clé «Dim» au niveau du script sont disponibles pour toutes les procédures d'un même script.

Example - Dans l'exemple ci-dessous, les valeurs de Var1 et Var2 sont déclarées au niveau du script tandis que Var3 est déclarée au niveau de la procédure.

Note- Le but de ce chapitre est de comprendre les variables. Les fonctions seront traitées en détail dans les prochains chapitres.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim Var1
         Dim Var2
         
         Call add()
         Function add()
            Var1 = 10
            Var2 = 15
            Dim Var3
            Var3 = Var1 + Var2
            Msgbox Var3 'Displays 25, the sum of two values.
         End Function

         Msgbox Var1   ' Displays 10 as Var1 is declared at Script level
         Msgbox Var2   ' Displays 15 as Var2 is declared at Script level
         Msgbox Var3   ' Var3 has No Scope outside the procedure. Prints Empty
      </script>
   </body>
</html>

Publique

Les variables déclarées à l'aide du mot-clé "Public" sont disponibles pour toutes les procédures dans tous les scripts associés. Lors de la déclaration d'une variable de type "public", le mot-clé Dim est remplacé par "Public".

Example - Dans l'exemple suivant, Var1 et Var2 sont disponibles au niveau du script, tandis que Var3 est disponible dans les scripts et procédures associés lorsqu'elle est déclarée comme publique.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim Var1
         Dim Var2
         Public Var3

         Call add()

         Function add()
            Var1 = 10
            Var2 = 15
            Var3 = Var1+Var2
            Msgbox Var3 'Displays 25, the sum of two values.
         End Function

         Msgbox Var1   ' Displays 10 as Var1 is declared at Script level
         Msgbox Var2   ' Displays 15 as Var2 is declared at Script level
         Msgbox Var3   ' Displays 25 as Var3 is declared as Public 

      </script>
   </body>
</html>

Privé

Les variables déclarées comme «privées» n'ont de portée que dans le script dans lequel elles sont déclarées. Lors de la déclaration d'une variable de type "Private", le mot clé Dim est remplacé par "Private".

Example- Dans l'exemple suivant, Var1 et Var2 sont disponibles au niveau du script. Var3 est déclaré comme privé et n'est disponible que pour ce script particulier. L'utilisation de variables «privées» est plus prononcée au sein de la classe.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim Var1
         Dim Var2
         Private Var3

         Call add()
         Function add()
            Var1 = 10
            Var2 = 15
            Var3 = Var1+Var2
            Msgbox Var3 'Displays the sum of two values.
         End Function

         Msgbox Var1   ' Displays 10 as Var1 is declared at Script level
         Msgbox Var2   ' Displays 15 as Var2 is declared at Script level
         Msgbox Var3   ' Displays 25 but Var3 is available only for this script.
      </script>
   </body>
</html>

La constante est un emplacement mémoire nommé utilisé pour contenir une valeur qui NE PEUT PAS être modifiée pendant l'exécution du script. Si un utilisateur tente de modifier une valeur constante, l'exécution du script se termine par une erreur. Les constantes sont déclarées de la même manière que les variables.

Déclaration de constantes

Syntaxe

[Public | Private] Const Constant_Name = Value

La constante peut être de type Public ou Private. L'utilisation de public ou privé est facultative. Les constantes publiques sont disponibles pour tous les scripts et procédures tandis que les constantes privées sont disponibles dans la procédure ou la classe. On peut attribuer n'importe quelle valeur telle que nombre, chaîne ou date à la constante déclarée.

Exemple 1

Dans cet exemple, la valeur de pi est 3,4 et il affiche la zone du cercle dans une boîte de message.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim intRadius
         intRadius = 20
         const pi = 3.14
         Area = pi*intRadius*intRadius
         Msgbox Area

      </script>
   </body>
</html>

Exemple 2

L'exemple ci-dessous illustre comment affecter une chaîne et une valeur de date à une constante.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Const myString = "VBScript"
         Const myDate = #01/01/2050#
         Msgbox myString
         Msgbox myDate

      </script>
   </body>
</html>

Exemple 3

Dans l'exemple ci-dessous, l'utilisateur essaie de modifier la valeur constante; par conséquent, il se terminera par unExecution Error.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim intRadius
         intRadius = 20
         const pi = 3.14
         pi = pi*pi	'pi VALUE CANNOT BE CHANGED.THROWS ERROR'
         Area = pi*intRadius*intRadius
         Msgbox Area
         
      </script>
   </body>
</html>

Qu'est-ce qu'un opérateur?

Prenons une expression 4 + 5 est égal à 9 . Ici, 4 et 5 sont appelésoperands et + s'appelle le operator. Le langage VBScript prend en charge les types d'opérateurs suivants -

  • Opérateurs arithmétiques
  • Opérateurs de comparaison
  • Opérateurs logiques (ou relationnels)
  • Opérateurs de concaténation

Les opérateurs arithmétiques

VBScript prend en charge les opérateurs arithmétiques suivants -

Supposons que la variable A vaut 5 et la variable B vaut 10, alors -

Afficher des exemples

Opérateur La description Exemple
+ Ajoute deux opérandes A + B donnera 15
- Soustrait le deuxième opérande du premier A - B donnera -5
* Multiplier les deux opérandes A * B donnera 50
/ Diviser le numérateur par le dénumérateur B / A donnera 2
% Opérateur de module et reste après une division entière B MOD A donnera 0
^ Opérateur d'exponentiation B ^ A donnera 100000

Pour mieux comprendre ces opérateurs, vous pouvez l' essayer vous-même .

Les opérateurs de comparaison

Les opérateurs de comparaison suivants sont pris en charge par le langage VBScript -

Supposons que la variable A vaut 10 et la variable B 20, alors -

Afficher des exemples

Opérateur La description Exemple
= Vérifie si la valeur de deux opérandes est égale ou non, si oui, la condition devient vraie. (A == B) est faux.
<> Vérifie si la valeur de deux opérandes est égale ou non, si les valeurs ne sont pas égales, la condition devient vraie. (A <> B) est vrai.
> Vérifie si la valeur de l'opérande gauche est supérieure à la valeur de l'opérande droit, si oui, la condition devient vraie. (A> B) est faux.
< Vérifie si la valeur de l'opérande gauche est inférieure à la valeur de l'opérande droit, si oui, la condition devient vraie. (A <B) est vrai.
> = Vérifie si la valeur de l'opérande gauche est supérieure ou égale à la valeur de l'opérande droit, si oui, la condition devient vraie. (A> = B) est faux.
<= Vérifie si la valeur de l'opérande gauche est inférieure ou égale à la valeur de l'opérande droit, si oui, la condition devient vraie. (A <= B) est vrai.

Pour mieux comprendre ces opérateurs, vous pouvez l' essayer vous-même .

Les opérateurs logiques

Les opérateurs logiques suivants sont pris en charge par le langage VBScript -

Supposons que la variable A vaut 10 et la variable B vaut 0, alors -

Afficher des exemples

Opérateur La description Exemple
ET Opérateur logique ET appelé. Si les deux conditions sont True, alors Expression devient True. a <> 0 ET b <> 0 est faux.
OU Opérateur OU logique appelé. Si l'une des deux conditions est vraie, la condition devient vraie. a <> 0 OU b <> 0 est vrai.
NE PAS Opérateur PAS logique appelé. Il inverse l'état logique de son opérande. Si une condition est True, alors l'opérateur logique NOT la rendra False. NOT (a <> 0 OU b <> 0) est faux.
XOR Exclusion logique appelée. C'est la combinaison de l'opérateur NOT et OR. Si une et une seule des expressions a la valeur True, le résultat est True. (a <> 0 XOR b <> 0) est vrai.

Pour mieux comprendre ces opérateurs, vous pouvez l' essayer vous-même .

Les opérateurs de concaténation

Les opérateurs de concaténation suivants sont pris en charge par le langage VBScript -

Supposons que la variable A vaut 5 et la variable B vaut 10 alors -

Afficher des exemples

Opérateur La description Exemple
+ Ajoute deux valeurs car les valeurs de variable sont numériques A + B donnera 15
& Concatène deux valeurs A & B donnera 510

Supposons que la variable A = "Microsoft" et la variable B = "VBScript", alors -

Opérateur La description Exemple
+ Concatène deux valeurs A + B donnera MicrosoftVBScript
& Concatène deux valeurs A & B donnera MicrosoftVBScript

Note- Les opérateurs de concaténation peuvent être utilisés pour les nombres et les chaînes. La sortie dépend du contexte si les variables contiennent une valeur numérique ou une valeur de chaîne.

Pour mieux comprendre ces opérateurs, vous pouvez l' essayer vous-même .

La prise de décision permet aux programmeurs de contrôler le flux d'exécution d'un script ou de l'une de ses sections. L'exécution est régie par une ou plusieurs instructions conditionnelles.

Voici la forme générale d'une structure de prise de décision typique trouvée dans la plupart des langages de programmation -

VBScript fournit les types suivants d'énoncés de prise de décision.

Déclaration La description
si déclaration Un if instruction se compose d'une expression booléenne suivie d'une ou plusieurs instructions.
instruction if..else Un if elseinstruction se compose d'une expression booléenne suivie d'une ou plusieurs instructions. Si la condition est True, les instructions sousIfles instructions sont exécutées. Si la condition est fausse, alors leElse une partie du script est exécutée
instruction if ... elseif..else Un if instruction suivie d'un ou plusieurs ElseIf Instructions, qui consistent en des expressions booléennes, puis suivies d'une instruction else facultative, qui s'exécute lorsque toute la condition devient fausse.
instructions if imbriquées Un if ou elseif déclaration dans un autre if ou elseif déclaration (s).
instruction switch UNE switch L'instruction permet à une variable d'être testée pour l'égalité par rapport à une liste de valeurs.

Il peut arriver que vous deviez exécuter un bloc de code plusieurs fois. En général, les instructions sont exécutées de manière séquentielle: la première instruction d'une fonction est exécutée en premier, suivie de la seconde, et ainsi de suite.

Les langages de programmation fournissent diverses structures de contrôle qui permettent des chemins d'exécution plus compliqués. Une instruction de boucle nous permet d'exécuter une instruction ou un groupe d'instructions plusieurs fois et suit le général à partir d'une instruction de boucle dans VBScript.

VBScript fournit les types de boucles suivants pour gérer les exigences de bouclage. Cliquez sur les liens suivants pour vérifier leurs détails.

Type de boucle La description
pour boucle Exécute une séquence d'instructions plusieurs fois et abrége le code qui gère la variable de boucle.
pour ..chaque boucle Il est exécuté s'il y a au moins un élément dans le groupe et réitéré pour chaque élément d'un groupe.
boucle while..wend Il teste la condition avant d'exécuter le corps de la boucle.
boucles do.. while Les instructions do..While seront exécutées tant que la condition est True. (C'est-à-dire) La boucle doit être répétée jusqu'à ce que la condition soit False.
faire..jusqu'à des boucles Les instructions do..Until seront exécutées tant que la condition est False (c'est-à-dire). La boucle doit être répétée jusqu'à ce que la condition soit vraie.

Déclarations de contrôle de boucle

Les instructions de contrôle de boucle modifient l'exécution de sa séquence normale. Lorsque l'exécution quitte une portée, toutes les instructions restantes dans la boucle ne sont PAS exécutées.

VBScript prend en charge les instructions de contrôle suivantes. Cliquez sur les liens suivants pour vérifier leurs détails.

Déclaration de contrôle La description
Exit For instruction Met fin au For loop instruction et transfère l'exécution à l'instruction immédiatement après la boucle
Instruction Exit Do Met fin au Do While instruction et transfère l'exécution à l'instruction immédiatement après la boucle

Qu'est-ce qu'un événement?

L'interaction de VBScript avec HTML est gérée par des événements qui se produisent lorsque l'utilisateur ou le navigateur manipule une page. Lorsque la page se charge, c'est un événement. Lorsque l'utilisateur clique sur un bouton, ce clic est également un événement. D'autres exemples d'événements incluent l'appui sur n'importe quelle touche, la fermeture de la fenêtre, le redimensionnement de la fenêtre, etc. autre type de réponse imaginable.

Les événements font partie du modèle d'objet de document (DOM) et chaque élément HTML a un certain ensemble d'événements, qui peuvent déclencher du code VBScript. Veuillez parcourir ce petit tutoriel pour une meilleure compréhension de la référence d'événements HTML . Ici, nous allons voir quelques exemples pour comprendre une relation entre Event et VBScript.

Type d'événement onclick

Il s'agit du type d'événement le plus fréquemment utilisé, qui se produit lorsqu'un utilisateur clique sur le bouton gauche de la souris. Vous pouvez mettre votre validation, avertissement, etc., contre ce type d'événement.

Exemple

<html>
   <head>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello() 
            msgbox "Hello World"
         End Function
      </script>
   </head>
   
   <body>
      <input type = "button" onclick = "sayHello()" value = "Say Hello"/>
   </body>
</html>

Cela produira le résultat suivant, et lorsque vous cliquez sur le bouton Hello, l'événement onclick se produira qui déclenchera la fonction sayHello ().

type d'événement onsubmit

Un autre type d'événement le plus important est onsubmit . Cet événement se produit lorsque vous essayez d'envoyer un formulaire. Vous pouvez donc comparer la validation de votre formulaire à ce type d'événement. Le formulaire est soumis en cliquant sur le bouton Soumettre, la boîte de message apparaît.

Le formulaire est soumis en cliquant sur le bouton Soumettre, la boîte de message apparaît.

Exemple

<html>
   <head> </head>
   <body>
      <script language = "VBScript">       
         Function fnSubmit()
            Msgbox("Hello Tutorialspoint.Com")
         End Function       
      </script>
      
      <form action = "/cgi-bin/test.cgi" method = "post" name = "form1" onSubmit = "fnSubmit()">
         <input name = "txt1" type = "text"><br>
         <input name = "btnButton1" type = "submit" value="Submit">
      </form>
   </body>
</html>

onmouseover et onmouseout

Ces deux types d'événements vous aideront à créer de jolis effets avec des images ou même avec du texte. L' événement onmouseover se produit lorsque vous amenez votre souris sur un élément et le onmouseout se produit lorsque vous retirez votre souris de cet élément.

Exemple

<html>
   <head> </head>
   <body>
      <script language = "VBScript">       
         Function AlertMsg
            Msgbox("ALERT !")
         End Function
          
         Function onmourse_over()
            Msgbox("Onmouse Over")
         End Function

         Sub txt2_OnMouseOut()
            Msgbox("Onmouse Out !!!")
         End Sub
          
         Sub btnButton_OnMouseOut()
            Msgbox("onmouse out on Button !")
         End Sub
      </script>
      
      <form action = "page.cgi" method = "post" name = "form1">
         <input name = "txt1" type = "text" OnMouseOut = "AlertMsg()"><br>
         <input name = "txt2" type = "text" OnMouseOver = "onmourse_over()">
         <br><input name = "btnButton" type = "button" value = "Submit">
      </form>
   </body>
</html>

Cela produira un résultat lorsque vous passez la souris sur la zone de texte et également lorsque vous éloignez le focus de la zone de texte et du bouton.

Événements standard HTML 4

Les événements HTML 4 standard sont répertoriés ici pour votre référence. Ici, le script indique une fonction VBScript à exécuter sur cet événement.

un événement Valeur La description
sur le changement scénario Le script s'exécute lorsque l'élément change
onsubmit scénario Le script s'exécute lorsque le formulaire est soumis
une réinitialisation scénario Le script s'exécute lorsque le formulaire est réinitialisé
le flou scénario Le script s'exécute lorsque l'élément perd le focus
onfocus scénario Le script s'exécute lorsque l'élément obtient le focus
onkeydown scénario Le script s'exécute lorsque la touche est enfoncée
onkeypress scénario Le script s'exécute lorsque la touche est enfoncée et relâchée
onkeyup scénario Le script s'exécute lorsque la clé est relâchée
sur clic scénario Le script s'exécute lorsqu'un clic de souris
ondblclick scénario Le script s'exécute lorsqu'un double-clic de souris
onmousedown scénario Le script s'exécute lorsque le bouton de la souris est enfoncé
à la souris scénario Le script s'exécute lorsque le pointeur de la souris se déplace
à la souris scénario Le script s'exécute lorsque le pointeur de la souris sort d'un élément
onmouseover scénario Le script s'exécute lorsque le pointeur de la souris se déplace sur un élément
onmouseup scénario Le script s'exécute lorsque le bouton de la souris est relâché

Que sont les cookies?

Les navigateurs Web et les serveurs utilisent le protocole HTTP pour communiquer et HTTP est un protocole sans état. Mais pour un site Web commercial, il est nécessaire de conserver les informations de session entre différentes pages. Par exemple, l'enregistrement d'un utilisateur se termine après avoir terminé de nombreuses pages. Mais comment conserver les informations de session de l'utilisateur sur toutes les pages Web. Dans de nombreuses situations, l'utilisation de cookies est la méthode la plus efficace pour mémoriser et suivre les préférences, les achats, les commissions et autres informations nécessaires pour une meilleure expérience des visiteurs ou des statistiques du site.

Comment ça fonctionne?

Votre serveur envoie certaines données au navigateur du visiteur sous la forme d'un cookie. Le navigateur peut accepter le cookie. Si tel est le cas, il est stocké sous forme d'enregistrement en texte brut sur le disque dur du visiteur. Désormais, lorsque le visiteur arrive sur une autre page de votre site, le navigateur envoie le même cookie au serveur pour récupération. Une fois récupéré, votre serveur sait / se souvient de ce qui a été stocké précédemment. Les cookies sont un enregistrement de données en texte brut de 5 champs de longueur variable -

  • Expires- La date d'expiration du cookie. Si ce champ est vide, le cookie expirera lorsque le visiteur quittera le navigateur.

  • Domain - Le nom de domaine de votre site.

  • Path- Le chemin d'accès au répertoire ou à la page Web qui a défini le cookie. Cela peut être vide si vous souhaitez récupérer le cookie à partir de n'importe quel répertoire ou page.

  • Secure- Si ce champ contient le mot «sécurisé», alors le cookie ne peut être récupéré qu'avec un serveur sécurisé. Si ce champ est vide, une telle restriction n'existe pas.

  • Name=Value - Les cookies sont définis et récupérés sous la forme de paires clé et valeur.

Les cookies ont été initialement conçus pour la programmation CGI et les données des cookies sont automatiquement transmises entre le navigateur Web et le serveur Web, de sorte que les scripts CGI sur le serveur peuvent lire et écrire les valeurs de cookies stockées sur le client.

VBScript peut également manipuler les cookies à l'aide de la propriété cookie de l' objet Document . VBScript peut lire, créer, modifier et supprimer le ou les cookies qui s'appliquent à la page Web actuelle.

Stockage des cookies

Le moyen le plus simple de créer un cookie est d'attribuer une valeur de chaîne à l' objet document.cookie , qui ressemble à ceci -

Syntaxe

document.cookie = "key1 = value1;key2 = value2;expires = date"

Ici, l' attribut expire est facultatif. Si vous fournissez à cet attribut une date ou une heure valide, le cookie expirera à la date ou à l'heure indiquée et après cela, la valeur des cookies ne sera plus accessible.

Exemple

Voici l'exemple pour définir un nom de client dans le cookie d' entrée .

<html>
   <head>
      <script type = "text/vbscript">
         Function WriteCookie
            If document.myform.customer.value = "" Then
               msgbox "Enter some value!"
            Else
               cookievalue = (document.myform.customer.value)
               document.cookie = "name = " + cookievalue
               msgbox "Setting Cookies : " & "name = " & cookievalue
            End If
         End Function
      </script>
   </head>
   
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>
   </body>
</html>

Cela produira le résultat suivant. Entrez maintenant quelque chose dans la zone de texte et appuyez sur le bouton "Set Cookie" pour définir les cookies.

Maintenant, votre système a un cookie appelé nom . Vous pouvez définir plusieurs cookies à l'aide de plusieurs paires clé = valeur séparées par une virgule. Vous apprendrez à lire ce cookie dans la section suivante.

Lire les cookies

La lecture d'un cookie est aussi simple que l'écriture d'un cookie, car la valeur de l' objet document.cookie est le cookie. Ainsi, vous pouvez utiliser cette chaîne chaque fois que vous souhaitez accéder au cookie. La chaîne document.cookie conservera une liste de paires nom = valeur séparées par des points-virgules où nom est le nom d'un cookie et valeur est sa valeur de chaîne. Vous pouvez utiliser la fonction split () des chaînes pour diviser la chaîne en clé et en valeurs comme suit -

Exemple

Voici l'exemple pour obtenir les cookies définis dans la section précédente -

<html>
   <head>
      <script type = "text/vbscript">
         Function ReadCookie
            allcookies = document.cookie
            msgbox "All Cookies : " + allcookies
            cookiearray = split(allcookies,";")
            
            For i = 0 to ubound(cookiearray)
               Name  = Split(cookiearray(i),"=")
               Msgbox "Key is : " + Name(0) + " and Value is : " + Name(1)
            Next
         End Function
      </script>
   </head>
   
   <body>
      <form name = "myform" action = "">
         <input type = "button" value = "Get Cookie" onclick = "ReadCookie()"/>
      </form>
   </body>
</html>

Note- Ici, UBound est une méthode de la classe Array , qui renvoie la longueur d'un tableau. Nous discuterons des tableaux dans un chapitre séparé; en attendant, essayez de le digérer.

Cela produira le résultat suivant. Maintenant, appuyez sur le bouton "Get Cookie" pour voir les cookies que vous avez définis dans la section précédente.

Note- Il se peut que d'autres cookies soient déjà installés sur votre ordinateur. Ainsi, le code ci-dessus vous montrera tous les cookies définis sur votre machine.

Définition de la date d'expiration des cookies

Vous pouvez prolonger la durée de vie d'un cookie au-delà de la session actuelle du navigateur en définissant une date d'expiration et en enregistrant la date d'expiration dans le cookie. Cela peut être fait en définissant l' attribut expires sur une date et une heure.

Exemple

L'exemple suivant montre comment définir la date d'expiration des cookies après 1 mois -

<html>
   <head>
      <script type = "text/vbscript">
         Function WriteCookie()
            x = now()
            y = dateadd("m",1,now())  ' Making it to expire next 
            cookievalue = document.myform.customer.value
            document.cookie = "name = "  & cookievalue
            document.cookie = "expires = " & y
            msgbox("Setting Cookies : " & "name=" & cookievalue )
         End Function
      </script>
   </head>
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>
   </body>
</html>

Supprimer un cookie

Parfois, vous souhaiterez supprimer un cookie afin que les tentatives ultérieures de lecture du cookie ne renvoient rien. Pour ce faire, il vous suffit de définir la date d'expiration sur une heure du passé.

Exemple

L'exemple suivant illustre comment supprimer un cookie en définissant sa date d'expiration 1 mois dans le passé -

<html>
   <head>
      <script type = "text/vbscript">
         Function WriteCookie()
            x = now()
            x = now()
            a = Month(x)-1
            b = day(x)
            c = year(x)
            d = DateSerial(c,a,b)
            e = hour(x) 
            
            msgbox e
            f = minute(x)
            
            msgbox f
            d = cdate(d & " " & e & ":" & f)
            
            msgbox d
            cookievalue = document.myform.customer.value
            document.cookie = "name = "  & cookievalue
            document.cookie = "expires = " & d
            msgbox("Setting Cookies : " & "name=" & cookievalue )
         End Function
      </script>
   </head>
   <body>
      <form name = "myform" action = "">
         Enter name: <input type = "text" name = "customer"/>
         <input type = "button" value = "Set Cookie" onclick = "WriteCookie()"/>
      </form>
   </body>
</html>

Les fonctions numériques aident les développeurs à gérer les nombres de manière efficace et les aident également à convertir leurs sous-types. Cela les aide également à utiliser les fonctions mathématiques intégrées associées à VBScript.

Fonctions de conversion de nombres

Les fonctions numériques nous aident à convertir un nombre donné d'un sous-type de données à un autre sous-type de données.

Afficher des exemples

Sr.Non Description de la fonction
1

CDbl

Une fonction, qui convertit un nombre donné de n'importe quel sous-type de variante en double

2

CInt

Une fonction, qui convertit un nombre donné de n'importe quel sous-type de variant en Integer

3

CLng

Une fonction, qui convertit un nombre donné de n'importe quel sous-type de variant en Long

4

CSng

Une fonction, qui convertit un nombre donné de n'importe quel sous-type de variante en Single

5

Hex

Une fonction, qui convertit un nombre donné de n'importe quel sous-type de variante en hexadécimal

Fonctions de formatage des nombres

Les fonctions de formatage des nombres aident les développeurs à exprimer le nombre donné dans un format qu'ils souhaitent.

Afficher des exemples

Sr.Non Description de la fonction
1

FormatNumber

Une fonction, qui renverrait une expression formatée sous forme de nombre

2

FormatPercent

Une fonction, qui renverrait une expression formatée en pourcentage

Fonctions mathématiques

Les fonctions mathématiques nous aident à évaluer les fonctions mathématiques et trigonométriques d'un nombre d'entrée donné.

Afficher des exemples

Sr.Non Description de la fonction
1

Int

Une fonction, qui renvoie la partie entière du nombre donné

2

Fix

Une fonction, qui renvoie la partie entière du nombre donné

3

Log

Une fonction, qui renvoie le logarithme naturel du nombre donné. Numéros négatifs interdits

4

Oct

Une fonction, qui renvoie la valeur octale du pourcentage donné

5

Hex

Une fonction, qui renvoie la valeur hexadécimale du nombre donné

6

Rnd

Une fonction, qui renvoie un nombre aléatoire entre 0 et 1

sept

Sgn

Une fonction, qui renvoie un nombre correspondant au signe du nombre spécifié

8

Sqr

Une fonction, qui renvoie la racine carrée du nombre donné. Numéros négatifs interdits

9

Abs

Une fonction, qui renvoie la valeur absolue du nombre donné

dix

Exp

Une fonction, qui renvoie la valeur de e élevée au nombre spécifié

11

Sin

Une fonction, qui renvoie la valeur sinusoïdale du nombre donné

12

Cos

Une fonction, qui renvoie la valeur cosinus du nombre donné

13

Tan

Une fonction, qui renvoie la valeur tan du nombre donné

Les chaînes sont une séquence de caractères, qui peut être constituée d'alphabets ou de nombres ou de caractères spéciaux ou de tous. Une variable est considérée comme une chaîne si elle est placée entre guillemets doubles "".

Syntaxe

variablename = "string"

Exemples

str1 = "string"   ' Only Alphabets
str2 = "132.45"   ' Only Numbers
str3 = "!@#$;*"   ' Only Special Characters
Str4 = "Asc23@#"  ' Has all the above

Fonctions de chaîne

Il existe des fonctions VBScript String prédéfinies, qui aident les développeurs à travailler très efficacement avec les chaînes. Vous trouverez ci-dessous les méthodes String prises en charge dans VBScript. Veuillez cliquer sur chacune des méthodes pour connaître en détail.

Nom de la fonction La description
InStr Renvoie la première occurrence de la sous-chaîne spécifiée. La recherche s'effectue de gauche à droite.
InstrRev Renvoie la première occurrence de la sous-chaîne spécifiée. La recherche s'effectue de droite à gauche.
Lcase Renvoie les minuscules de la chaîne spécifiée.
Ucase Renvoie la majuscule de la chaîne spécifiée.
La gauche Renvoie un nombre spécifique de caractères du côté gauche de la chaîne.
Droite Renvoie un nombre spécifique de caractères du côté droit de la chaîne.
Milieu Renvoie un nombre spécifique de caractères d'une chaîne en fonction des paramètres spécifiés.
Ltrim Renvoie une chaîne après avoir supprimé les espaces sur le côté gauche de la chaîne spécifiée.
Rtrim Renvoie une chaîne après avoir supprimé les espaces sur le côté droit de la chaîne spécifiée.
Réduire Renvoie une valeur de chaîne après avoir supprimé les espaces de début et de fin.
Len Renvoie la longueur de la chaîne donnée.
Remplacer Renvoie une chaîne après avoir remplacé une chaîne par une autre chaîne.
Espace Remplit une chaîne avec le nombre d'espaces spécifié.
StrComp Renvoie une valeur entière après avoir comparé les deux chaînes spécifiées.
Chaîne Renvoie une chaîne avec un caractère spécifié le nombre de fois spécifié.
StrReverse Renvoie une chaîne après avoir inversé la séquence des caractères de la chaîne donnée.

Qu'est-ce qu'un tableau?

On sait très bien qu'une variable est un conteneur pour stocker une valeur. Parfois, les développeurs sont en mesure de conserver plusieurs valeurs dans une seule variable à la fois. Lorsqu'une série de valeurs est stockée dans une seule variable, on parle alors dearray variable.

Déclaration Array

Les tableaux sont déclarés de la même manière qu'une variable a été déclarée, sauf que la déclaration d'une variable de tableau utilise des parenthèses. Dans l'exemple suivant, la taille du tableau est mentionnée entre crochets.

'Method 1 : Using Dim
Dim arr1() 'Without Size

'Method 2 : Mentioning the Size
Dim arr2(5) 'Declared with size of 5

'Method 3 : using 'Array' Parameter
Dim arr3
arr3 = Array("apple","Orange","Grapes")
  • Bien que la taille du tableau soit indiquée comme 5, elle peut contenir 6 valeurs car l'index du tableau commence à zéro.

  • L'index du tableau ne peut pas être négatif.

  • Les tableaux VBScript peuvent stocker tout type de variable dans un tableau. Par conséquent, un tableau peut stocker un entier, une chaîne ou des caractères dans une seule variable de tableau.

Attribution de valeurs à un tableau

Les valeurs sont affectées au tableau en spécifiant la valeur d'index du tableau par rapport à chacune des valeurs à affecter. Cela peut être une chaîne.

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim arr(5)
         arr(0) = "1"            'Number as String
         arr(1) = "VBScript"     'String
         arr(2) = 100            'Number
         arr(3) = 2.45           'Decimal Number
         arr(4) = #10/07/2013#   'Date
         arr(5) = #12.45 PM#     'Time

         document.write("Value stored in Array index 0 : " & arr(0) & "<br />")
         document.write("Value stored in Array index 1 : " & arr(1) & "<br />")
         document.write("Value stored in Array index 2 : " & arr(2) & "<br />")
         document.write("Value stored in Array index 3 : " & arr(3) & "<br />")
         document.write("Value stored in Array index 4 : " & arr(4) & "<br />")
         document.write("Value stored in Array index 5 : " & arr(5) & "<br />")

      </script>
   </body>
</html>

Lorsque le code ci-dessus est enregistré au format .HTML et exécuté dans Internet Explorer, il produit le résultat suivant -

Value stored in Array index 0 : 1
Value stored in Array index 1 : VBScript
Value stored in Array index 2 : 100
Value stored in Array index 3 : 2.45
Value stored in Array index 4 : 7/10/2013
Value stored in Array index 5 : 12:45:00 PM

Tableaux multidimensionnels

Les tableaux ne sont pas seulement limités à une seule dimension et peuvent avoir un maximum de 60 dimensions. Les tableaux à deux dimensions sont les plus couramment utilisés.

Exemple

Dans l'exemple suivant, un tableau multidimensionnel est déclaré avec 3 lignes et 4 colonnes.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim arr(2,3)	' Which has 3 rows and 4 columns
         arr(0,0) = "Apple" 
         arr(0,1) = "Orange"
         arr(0,2) = "Grapes"           
         arr(0,3) = "pineapple" 
         
         arr(1,0) = "cucumber"           
         arr(1,1) = "beans"           
         arr(1,2) = "carrot"           
         arr(1,3) = "tomato"    
         
         arr(2,0) = "potato"             
         arr(2,1) = "sandwitch"            
         arr(2,2) = "coffee"             
         arr(2,3) = "nuts"            
                  
         document.write("Value in Array index 0,1 : " &  arr(0,1) & "<br />")
         document.write("Value in Array index 2,2 : " &  arr(2,2) & "<br />")

      </script>
   </body>
</html>

Lorsque le code ci-dessus est enregistré au format .HTML et exécuté dans Internet Explorer, il produit le résultat suivant -

Value stored in Array index : 0 , 1 : Orange
Value stored in Array index : 2 , 2 : coffee

Déclaration Redim

L'instruction ReDim est utilisée pour déclarer des variables de tableau dynamique et allouer ou réallouer de l'espace de stockage.

ReDim [Preserve] varname(subscripts) [, varname(subscripts)]
  • Preserve - Un paramètre facultatif utilisé pour conserver les données dans un tableau existant lorsque vous modifiez la taille de la dernière dimension.

  • varname - Un paramètre obligatoire, qui indique le nom de la variable, qui doit suivre les conventions de dénomination de variable standard.

  • subscripts - Un paramètre obligatoire, qui indique la taille du tableau.

Exemple

Dans l'exemple ci-dessous, un tableau a été redéfini, puis conservé les valeurs lorsque la taille existante du tableau est modifiée.

Note - Lors du redimensionnement d'un tableau plus petit qu'il ne l'était à l'origine, les données des éléments éliminés seront perdues.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim a()
         i = 0
         redim a(5)
         a(0) = "XYZ"
         a(1) = 41.25
         a(2) = 22
           
         REDIM PRESERVE a(7)
         For i = 3 to 7
         a(i) = i
         Next
           
         'to Fetch the output
         For i = 0 to ubound(a)
            Msgbox a(i)
         Next
      </script>
   </body>
</html>

Lorsque nous enregistrons le script ci-dessus au format HTML et l'exécutons dans Internet Explorer, cela produit le résultat suivant.

XYZ
41.25
22
3
4
5
6
7

Méthodes de tableau

Il existe diverses fonctions intégrées dans VBScript qui aident les développeurs à gérer efficacement les tableaux. Toutes les méthodes utilisées avec les tableaux sont répertoriées ci-dessous. Veuillez cliquer sur le nom de la méthode pour connaître en détail.

Fonction La description
LBound Une fonction, qui renvoie un entier correspondant au plus petit indice des tableaux donnés.
UBound Une fonction, qui renvoie un entier correspondant au plus grand indice des tableaux donnés.
Divisé Une fonction, qui renvoie un tableau contenant un nombre spécifié de valeurs. Divisé en fonction d'un délimiteur.
Joindre Une fonction, qui renvoie une chaîne contenant un nombre spécifié de sous-chaînes dans un tableau. C'est une fonction exactement opposée à la méthode de fractionnement.
Filtre Une fonction, qui renvoie un tableau de base zéro qui contient un sous-ensemble d'un tableau de chaînes basé sur un critère de filtre spécifique.
IsArray Une fonction, qui renvoie une valeur booléenne indiquant si la variable d'entrée est ou non un tableau.
Effacer Une fonction, qui récupère la mémoire allouée pour les variables du tableau.

Les fonctions de date et d'heure de VBScript aident les développeurs à convertir la date et l'heure d'un format à un autre ou à exprimer la valeur de la date ou de l'heure dans le format qui convient à une condition spécifique.

Fonctions de date

Fonction La description
Date Une fonction, qui renvoie la date système actuelle
CDate Une fonction, qui convertit une entrée donnée en date
DateAjouter Une fonction, qui renvoie une date à laquelle un intervalle de temps spécifié a été ajouté
DateDiff Une fonction, qui renvoie la différence entre deux périodes
DatePart Une fonction, qui renvoie une partie spécifiée de la valeur de date d'entrée donnée
DateSerial Une fonction, qui renvoie une date valide pour l'année, le mois et la date donnés
FormatDateTime Une fonction, qui formate la date en fonction des paramètres fournis
IsDate Une fonction, qui renvoie une valeur booléenne, que le paramètre fourni soit ou non une date
journée Une fonction, qui renvoie un entier entre 1 et 31 qui représente le jour de la date spécifiée
Mois Une fonction, qui renvoie un entier entre 1 et 12 qui représente le mois de la date spécifiée
An Une fonction, qui renvoie un entier qui représente l'année de la date spécifiée
MonthName Une fonction, qui renvoie le nom du mois particulier pour la date spécifiée
Jour de la semaine Une fonction, qui renvoie un entier (1 à 7) qui représente le jour de la semaine pour le jour spécifié.
WeekDayName Une fonction, qui renvoie le nom du jour de la semaine pour le jour spécifié.

Fonctions de temps

Fonction La description
Maintenant Une fonction, qui renvoie la date et l'heure actuelles du système
Heure Une fonction, qui renvoie un entier compris entre 0 et 23 qui représente la partie heure de l'heure donnée
Minute Une fonction, qui renvoie un entier entre 0 et 59 qui représente la partie Minutes de l'heure donnée
Seconde Une fonction, qui renvoie un entier entre 0 et 59 qui représente la partie Secondes du temps donné
Temps Une fonction, qui renvoie l'heure système actuelle
Minuteur Une fonction, qui renvoie le nombre de secondes et de millisecondes depuis minuit
TimeSerial Une fonction, qui renvoie l'heure pour l'entrée spécifique d'heure, de minute et de seconde
Valeur de temps Une fonction, qui convertit la chaîne d'entrée en un format d'heure

Qu'est-ce qu'une fonction?

Une fonction est un groupe de code réutilisable qui peut être appelé n'importe où dans votre programme. Cela élimine le besoin d'écrire le même code encore et encore. Cela permettra aux programmeurs de diviser un gros programme en un certain nombre de fonctions petites et gérables. Outre les fonctions intégrées, VBScript nous permet également d'écrire des fonctions définies par l'utilisateur. Cette section vous expliquera comment écrire vos propres fonctions dans VBScript.

Définition de fonction

Avant d'utiliser une fonction, nous devons définir cette fonction particulière. La manière la plus courante de définir une fonction dans VBScript consiste à utiliser le mot-clé Function, suivi d'un nom de fonction unique et il peut ou non porter une liste de paramètres et une instruction avec unEnd Function mot-clé, qui indique la fin de la fonction.

La syntaxe de base est indiquée ci-dessous -

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function Functionname(parameter-list)
            statement 1
            statement 2
            statement 3
            .......
            statement n
         End Function

      </script>
   </body>
</html>

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello()
            msgbox("Hello there")
         End Function

      </script>
   </body>
</html>

Appeler une fonction

Pour appeler une fonction quelque part plus tard dans le script, vous auriez simplement besoin d'écrire le nom de cette fonction avec le Call mot-clé.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello()
            msgbox("Hello there")
         End Function

         Call sayHello()
        
      </script>
   </body>
</html>

Paramètres de fonction

Jusqu'à présent, nous avons vu une fonction sans paramètre, mais il existe une possibilité de passer différents paramètres tout en appelant une fonction. Ces paramètres passés peuvent être capturés dans la fonction et toute manipulation peut être effectuée sur ces paramètres. Les fonctions sont appelées à l'aide duCall Mot-clé.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function sayHello(name, age)
            msgbox( name & " is " & age & " years old.")
         End Function

         Call sayHello("Tutorials point", 7)

      </script>
   </body>
</html>

Renvoyer une valeur à partir d'une fonction

Une fonction VBScript peut avoir une instruction de retour facultative. Ceci est obligatoire si vous souhaitez renvoyer une valeur à partir d'une fonction. Par exemple, vous pouvez passer deux nombres dans une fonction, puis vous pouvez vous attendre à ce que la fonction renvoie leur multiplication dans votre programme appelant.

NOTE - Une fonction peut renvoyer plusieurs valeurs séparées par une virgule sous la forme d'un tableau affecté au nom de la fonction lui-même.

Exemple

Cette fonction prend deux paramètres et les concatène et renvoie le résultat dans le programme appelant. Dans VBScript, les valeurs sont renvoyées à partir d'une fonction utilisant le nom de la fonction. Si vous souhaitez renvoyer deux valeurs ou plus, le nom de la fonction est renvoyé avec un tableau de valeurs. Dans le programme appelant, le résultat est stocké dans la variable result.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function concatenate(first, last)
            Dim full
            full = first & last
            concatenate = full  'Returning the result to the function name itself
         End Function

      </script>
   </body>
</html>

Maintenant, nous pouvons appeler cette fonction comme suit -

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Function concatenate(first, last)
            Dim full
            full = first & last
            concatenate = full  'Returning the result to the function name itself
         End Function
         ' Here is the usage of returning value from  function. 
         dim result
            result = concatenate("Zara", "Ali")
        msgbox(result)
      </script>
   </body>
</html>

Sous-procédures

Les sous-procédures sont similaires aux fonctions mais il y a peu de différences.

  • Sous-procédures DONOT Renvoie une valeur tandis que les fonctions peuvent ou non renvoyer une valeur.

  • Sous-procédures Peut être appelée sans mot-clé d'appel.

  • Les sous-procédures sont toujours incluses dans Sub et End Sub déclarations.

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Sub sayHello()
            msgbox("Hello there")
         End Sub

      </script>
   </body>
</html>

Procédures d'appel

Pour invoquer une procédure quelque part plus tard dans le script, il vous suffit d'écrire le nom de cette procédure avec ou sans le Call mot-clé.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Sub sayHello()
            msgbox("Hello there")
         End Sub
         sayHello()

      </script>
   </body>
</html>

Concepts avancés pour les fonctions

Il y a beaucoup à apprendre sur les fonctions VBScript. Nous pouvons passer le paramètre par valeur ou par référence. Veuillez cliquer sur chacun d'eux pour en savoir plus.

  • ByVal - Passer les paramètres par valeur

  • ByRef- Passer les paramètres par la référence

Qu'est-ce qu'une boîte de dialogue?

VBScript permet aux développeurs d'interagir efficacement avec l'utilisateur. Il peut s'agir d'une boîte de message pour afficher un message à un utilisateur ou d'une boîte de saisie avec laquelle l'utilisateur peut entrer les valeurs.

Fonction MsgBox VBScript

La fonction MsgBox affiche une boîte de message et attend que l'utilisateur clique sur un bouton, puis une action est effectuée en fonction du bouton cliqué par l'utilisateur.

Syntaxe

MsgBox(prompt[,buttons][,title][,helpfile,context])

Description des paramètres

  • Prompt- Un paramètre obligatoire. Une chaîne qui s'affiche sous forme de message dans la boîte de dialogue. La longueur maximale de l'invite est d'environ 1024 caractères. Si le message s'étend sur plus d'une ligne, alors nous pouvons séparer les lignes en utilisant un caractère de retour chariot (Chr (13)) ou un caractère de saut de ligne (Chr (10)) entre chaque ligne.

  • buttons- Un paramètre facultatif. Expression numérique qui spécifie le type de boutons à afficher, le style d'icône à utiliser, l'identité du bouton par défaut et la modalité de la boîte de message. Si ce champ est laissé vide, la valeur par défaut des boutons est 0.

  • Title- Un paramètre facultatif. Une expression String affichée dans la barre de titre de la boîte de dialogue. Si le titre est laissé vide, le nom de l'application est placé dans la barre de titre.

  • helpfile- Un paramètre facultatif. Expression String qui identifie le fichier d'aide à utiliser pour fournir une aide contextuelle pour la boîte de dialogue.

  • context- Un paramètre facultatif. Expression numérique qui identifie le numéro de contexte de l'aide attribué par l'auteur de l'aide à la rubrique d'aide appropriée. Si le contexte est fourni, le fichier d'aide doit également être fourni.

le Buttons paramètre peut prendre l'une des valeurs suivantes -

  • 0 vbOKOnly Affiche uniquement le bouton OK.

  • 1 vbOKCancel Affiche les boutons OK et Annuler.

  • 2 vbAbortRetryIgnore Affiche les boutons Abandonner, Réessayer et Ignorer.

  • 3 vbYesNoCancel Affiche les boutons Oui, Non et Annuler.

  • 4 vbYesNo Affiche les boutons Oui et Non.

  • 5 vbRetryCancel Affiche les boutons Réessayer et Annuler.

  • 16 vbCritical affiche l'icône de message critique.

  • 32 vbQuestion Affiche l'icône de requête d'avertissement.

  • 48 vbExclamation Affiche l'icône de message d'avertissement.

  • 64 vbInformation Affiche l'icône de message d'information.

  • 0 vbDefaultButton1 Le premier bouton est par défaut.

  • 256 vbDefaultButton2 Le deuxième bouton est par défaut.

  • 512 vbDefaultButton3 Le troisième bouton est par défaut.

  • 768 vbDefaultButton4 Le quatrième bouton est la valeur par défaut.

  • 0 vbApplicationModal Application modale. L'application actuelle ne fonctionnera pas tant que l'utilisateur n'aura pas répondu à la boîte de message.

  • 4096 vbSystemModal System modal. Toutes les applications ne fonctionneront pas tant que l'utilisateur n'aura pas répondu à la boîte de message.

Les valeurs ci-dessus sont logiquement divisées en quatre groupes: Le premier groupe (0 à 5) indique les boutons à afficher dans la boîte de message. Le deuxième groupe (16, 32, 48, 64) décrit le style de l'icône à afficher, le troisième groupe (0, 256, 512, 768) indique quel bouton doit être le bouton par défaut et le quatrième groupe (0, 4096 ) détermine la modalité de la boîte de message.

Valeurs de retour

La fonction MsgBox peut renvoyer l'une des valeurs suivantes -

  • 1 - vbOK - OK a été cliqué

  • 2 - vbCancel - Annuler a été cliqué

  • 3 - vbAbort - Abandon a été cliqué

  • 4 - vbRetry - Une nouvelle tentative a été cliquée

  • 5 - vbIgnore - Ignorer a été cliqué

  • 6 - vbYes - Oui a été cliqué

  • 7 - vbNo - Non a été cliqué

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         'Message Box with just prompt message
         MsgBox("Welcome")    
           
         'Message Box with title, yes no and cancel Butttons 
         a = MsgBox("Do you like blue color?",3,"Choose options")
         ' Assume that you press No Button	
         document.write("The Value of a is " & a)
         
      </script>
   </body>
</html>

Lorsque le script ci-dessus est exécuté, la boîte de message s'affiche et si vous appuyez sur Aucun bouton, la valeur de a est 7.

The Value of a is 7

Fonction VBScript InputBox

La fonction InputBox aide l'utilisateur à obtenir les valeurs de l'utilisateur. Après avoir entré les valeurs, si l'utilisateur clique sur le bouton OK ou appuie sur ENTRÉE sur le clavier, la fonction InputBox renverra le texte dans la zone de texte. Si l'utilisateur clique sur le bouton Annuler, la fonction renverra une chaîne vide ("").

Syntaxe

InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])

Description des paramètres

  • Prompt- Un paramètre obligatoire. Une chaîne qui s'affiche sous forme de message dans la boîte de dialogue. La longueur maximale de l'invite est d'environ 1024 caractères. Si le message s'étend sur plus d'une ligne, alors nous pouvons séparer les lignes en utilisant un caractère de retour chariot (Chr (13)) ou un caractère de saut de ligne (Chr (10)) entre chaque ligne.

  • Title- Un paramètre facultatif. Une expression String affichée dans la barre de titre de la boîte de dialogue. Si le titre est laissé vide, le nom de l'application est placé dans la barre de titre.

  • Default- Un paramètre facultatif. Un texte par défaut dans la zone de texte que l'utilisateur souhaite afficher.

  • XPos- Un paramètre facultatif. La position de l'axe X qui représente la distance rapide du côté gauche de l'écran horizontalement. Si elle est laissée vide, la zone de saisie est centrée horizontalement.

  • YPos- Un paramètre facultatif. La position de l'axe Y qui représente la distance rapide du côté gauche de l'écran verticalement. Si elle est laissée vide, la zone de saisie est centrée verticalement.

  • helpfile- Un paramètre facultatif. Expression String qui identifie le fichier d'aide à utiliser pour fournir une aide contextuelle pour la boîte de dialogue.

  • context- Un paramètre facultatif. Expression numérique qui identifie le numéro de contexte de l'aide attribué par l'auteur de l'aide à la rubrique d'aide appropriée. Si le contexte est fourni, le fichier d'aide doit également être fourni.

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         ' Input Box with only Prompt
         InputBox("Enter a number")    
        
         ' Input Box with a Title
         a = InputBox("Enter a Number","Enter Value")
         msgbox a
        
         ' Input Box with a Prompt,Title and Default value
         a = InputBox("Enter a Number","Enter Value",123)
         msgbox a
        
         ' Input Box with a Prompt,Title,Default and XPos
         a = InputBox("Enter your name","Enter Value",123,700)
         msgbox a
        
         ' Input Box with a Prompt,Title and Default and YPos
         a = InputBox("Enter your name","Enter Value",123,,500)
         msgbox a
         
      </script>
   </body>
</html>

Lorsque le script ci-dessus est exécuté, la zone de saisie s'affiche et affiche la valeur saisie par l'utilisateur.

Qu'est-ce qu'un objet

Les objets d'exécution VBScript nous aident à accomplir diverses tâches. Cette section vous aidera à comprendre comment instancier un objet et comment l'utiliser.

Syntaxe

Afin de travailler avec des objets de manière transparente, nous devons déclarer l'objet et l'instancier en utilisant Set Mot-clé.

Dim objectname    'Declare the object name
Set objectname = CreateObject(object_type)

Exemple

Dans l'exemple ci-dessous, nous créons un objet de type Scripting.Dictionary.

Dim obj  
Set obj = CreateObject("Scripting.Dictionary")

Détruire les objets

L'importance de la destruction de l'objet est de libérer la mémoire et de réinitialiser la variable objet.

Syntaxe

Afin de détruire les objets, nous devons utiliser Set Mot-clé suivi du nom de l'objet et pointez-le vers Nothing.

Set objectname = Nothing 'Destroy the object.

Exemple

Dans l'exemple ci-dessous, nous créons un objet de type Scripting.Dictionary.

Dim obj  
Set obj = CreateObject("Scripting.Dictionary")
Set obj = Nothing.

Utilisation des objets

Veuillez cliquer sur chacun des types d'objets donnés pour en savoir plus.

Type d'objet La description
Classe La classe est un conteneur qui contient les méthodes et les variables qui lui sont associées et auxquelles on accède en créant un objet de classe de type.
Scripting.FileSystemObject C'est le groupe d'objets avec lequel nous pouvons travailler avec le système de fichiers.
Scripting.Dictionary Un groupe d'objets, qui sont utilisés pour créer les objets du dictionnaire.
Déboguer Un objet global avec lequel nous pouvons envoyer la sortie au débogueur de script Microsoft.

Les expressions régulières sont une séquence de caractères qui forme un modèle, qui est principalement utilisé pour la recherche et le remplacement. Le but de la création d'un modèle est de faire correspondre des chaînes spécifiques, afin que le développeur puisse extraire des caractères en fonction de conditions et remplacer certains caractères.

Objet RegExp

L'objet RegExp aide les développeurs à faire correspondre le modèle de chaînes et les propriétés et méthodes nous aident à travailler facilement avec les expressions régulières. Il est similaire à RegExp en JavaScript

Propriétés

  • Pattern - La méthode Pattern représente une chaîne utilisée pour définir l'expression régulière et doit être définie avant d'utiliser l'objet expression régulière.

  • IgnoreCase- Une propriété booléenne qui représente si l'expression régulière doit être testée par rapport à toutes les correspondances possibles dans une chaîne si elle est vraie ou fausse. Si non spécifié explicitement, la valeur IgnoreCase est définie sur False.

  • Global- Une propriété booléenne qui représente si l'expression régulière doit être testée par rapport à toutes les correspondances possibles dans une chaîne. S'il n'est pas spécifié explicitement, la valeur globale est définie sur False.

Méthodes

  • Test(chaîne de recherche) - La méthode Test prend une chaîne comme argument et renvoie True si l'expression régulière peut être mise en correspondance avec la chaîne, sinon False est renvoyé.

  • Replace(chaîne de recherche, chaîne de remplacement) - La méthode Replace prend 2 paramètres. Si la recherche réussit, elle remplace cette correspondance par la chaîne de remplacement et la nouvelle chaîne est renvoyée. S'il n'y a pas de correspondance, la chaîne de recherche d'origine est renvoyée.

  • Execute(chaîne de recherche) - La méthode Execute fonctionne comme Replace, sauf qu'elle renvoie un objet de collection Matches, contenant un objet Match pour chaque correspondance réussie. Il ne modifie pas la chaîne d'origine.

Correspond à l'objet de collection

L'objet de collection Matches est renvoyé à la suite de la méthode Execute. Cet objet de collection peut contenir zéro ou plusieurs objets Match et les propriétés de cet objet sont en lecture seule.

  • Count - La méthode Count représente le nombre d'objets de correspondance dans la collection.

  • Item - La méthode Item permet d'accéder aux objets de correspondance à partir de l'objet de collections de correspondances.

Match Object

L'objet Match est contenu dans l'objet de collection matches. Ces objets représentent la correspondance réussie après la recherche d'une chaîne.

  • FirstIndex- Il représente la position dans la chaîne d'origine où la correspondance s'est produite. Cet index est basé sur zéro, ce qui signifie que la première position dans une chaîne est 0.

  • Length - Une valeur qui représente la longueur totale de la chaîne correspondante.

  • Value- Une valeur qui représente la valeur ou le texte correspondant. C'est également la valeur par défaut lors de l'accès à l'objet Match.

Tout sur le paramètre de motif

La construction du modèle est similaire à PERL. La création de modèles est la chose la plus importante lorsque vous travaillez avec des expressions régulières. Dans cette section, nous verrons comment créer un motif basé sur divers facteurs.

Correspondance de position

L'importance de la correspondance de position est de s'assurer que nous plaçons les expressions régulières aux bons endroits.

symbole La description
^ Correspond uniquement au début d'une chaîne.
$ Correspond uniquement à la fin d'une chaîne.
\ b Correspond à n'importe quelle limite de mot
\ B Correspond à n'importe quelle limite autre qu'un mot

Correspondance littérale

Toute forme de caractères tels que l'alphabet, le nombre ou le caractère spécial ou même décimal, hexadécimal peut être traité comme un littéral. Étant donné que peu de caractères ont déjà une signification particulière dans le contexte de l'expression régulière, nous devons les échapper à l'aide de séquences d'échappement.

symbole La description
Alphanumérique Correspond uniquement aux caractères alphabétiques et numériques.
\ n Correspond à une nouvelle ligne.
\ [ Correspondances [littéral uniquement
\] Correspond à] littéral uniquement
\ ( Correspondances (littéral uniquement
\) Matches) littéral uniquement
\ t Correspond à l'onglet horizontal
\ v Correspond à l'onglet vertical
\ | Matchs | littéral seulement
\ { Correspond à {littéral uniquement
\} Correspond à} littéral uniquement
\\ Correspond à \ littéral uniquement
\? Allumettes ? littéral seulement
\ * Correspond à * littéral uniquement
\ + Correspondances + littéral uniquement
\. Allumettes . littéral seulement
\ b Correspond à n'importe quelle limite de mot
\ B Correspond à n'importe quelle limite autre qu'un mot
\F Correspond à un flux de formulaire
\ r Correspond au retour chariot
\ xxx Correspond au caractère ASCII d'un nombre octal xxx.
\ xdd Correspond au caractère ASCII d'un nombre hexadécimal dd.
\ uxxxx Correspond au caractère ASCII d'un littéral UNICODE xxxx.

Correspondance des classes de caractères

Les classes de caractères sont le motif formé par un regroupement personnalisé et entouré d'accolades []. Si nous attendons une classe de caractères qui ne devrait pas être dans la liste, alors nous devons ignorer cette classe de caractères particulière en utilisant le symbole négatif, qui est une majuscule ^.

symbole La description
[xyz] Correspond à n'importe quelle classe de caractères incluse dans le jeu de caractères.
[^ xyz] Correspond à toute classe de caractères qui n'est PAS incluse dans le jeu de caractères.
. Correspond à n'importe quelle classe de caractères sauf \ n
\ w Correspond à n'importe quelle classe de caractères de mot. Équivalent à [a-zA-Z_0-9]
\ W Correspond à n'importe quelle classe de caractères autres que des mots. Équivalent à [^ a-zA-Z_0-9]
\ré Correspond à n'importe quelle classe de chiffres. Équivalent à [0-9].
\RÉ Correspond à n'importe quelle classe de caractères sans chiffres. Équivaut à [^ 0-9].
\ s Correspond à n'importe quelle classe de caractères d'espace. Équivalent à [\ t \ r \ n \ v \ f]
\ S Correspond à n'importe quelle classe de caractères d'espace. Équivalent à [^ \ t \ r \ n \ v \ f]

Correspondance de répétition

La correspondance de répétition permet plusieurs recherches dans l'expression régulière. Il spécifie également le nombre de fois qu'un élément est répété dans une expression régulière.

symbole La description
* Correspond à zéro ou plusieurs occurrences de l'expression régulière donnée. Équivalent à {0,}.
+ Correspond à une ou plusieurs occurrences de l'expression régulière donnée. Équivaut à {1,}.
? Correspond à zéro ou une occurrence de l'expression régulière donnée. Équivaut à {0,1}.
{X} Correspond exactement au nombre d'occurrences de l'expression régulière donnée.
{X,} Correspond à au moins x occurrences ou plus de l'expression régulière donnée.
{x, y} Correspond au nombre x à y d'occurrences de l'expression régulière donnée.

Alternance et regroupement

L'alternance et le regroupement aident les développeurs à créer des expressions régulières plus complexes en traitant particulièrement les clauses complexes dans une expression régulière, ce qui donne une grande flexibilité et un contrôle.

symbole La description
0 Regrouper une clause pour créer une clause. "(xy)? (z)" correspond à "xyz" ou "z".
| L'alternance combine une clause d'expression régulière, puis correspond à l'une des clauses individuelles. "(ij) | (23) | (pq)" correspond à "ij" ou "23" ou "pq".

Création d'expressions régulières

Vous trouverez ci-dessous quelques exemples qui expliquent clairement comment créer une expression régulière.

Expression régulière La description
"^ \ s * .." et ".. \ s * $" Représente qu'il peut y avoir n'importe quel nombre de caractères d'espacement de début et de fin sur une seule ligne.
"((\ $ \ s?) | (# \ s?))?" Représente un signe facultatif $ ou # suivi d'un espace facultatif.
"((\ d + (\. (\ d \ d)?)?))" Représente qu'au moins un chiffre est présent suivi d'une décimale facultative et de deux chiffres après la décimale.

Exemple

L'exemple ci-dessous vérifie si l'utilisateur a entré ou non un identifiant de messagerie dont le format doit correspondre de sorte qu'il y ait un identifiant de courrier électronique suivi de «@», puis du nom de domaine.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         strid = "[email protected]"
         Set re = New RegExp
         With re
            .Pattern    = "^[\w-\.]{1,}\@([\da-zA-Z-]{1,}\.){1,}[\da-zA-Z-]{2,3}$"
            .IgnoreCase = False
            .Global     = False
         End With
        
         ' Test method returns TRUE if a match is found
         If re.Test( strid ) Then
            Document.write(strid & " is a valid e-mail address")
         Else
            Document.write(strid & " is NOT a valid e-mail address")
         End If
        
        Set re = Nothing
      </script>
   </body>
</html>

Il existe trois types d'erreurs de programmation: (a) les erreurs de syntaxe, (b) les erreurs d'exécution et (c) les erreurs logiques.

Erreurs de syntaxe

Les erreurs de syntaxe, également appelées erreurs d'analyse, se produisent au moment de l'interprétation pour VBScript. Par exemple, la ligne suivante provoque une erreur de syntaxe car il manque une parenthèse fermante -

<script type = "text/vbscript">

   dim x,y
   x = "Tutorialspoint"
   y = Ucase(x

</script>

Erreurs d'exécution

Les erreurs d'exécution, également appelées exceptions, se produisent pendant l'exécution, après interprétation. Par exemple, la ligne suivante provoque une erreur d'exécution car ici la syntaxe est correcte mais au moment de l'exécution, elle tente d'appeler fnmultiply, qui est une fonction non existante -

<script type = "text/vbscript">
   Dim x,y
   x = 10
   y = 20
   z = fnadd(x,y)
   a = fnmultiply(x,y)
   
   Function fnadd(x,y)
      fnadd = x+y
   End Function

</script>

Erreurs logiques

Les erreurs de logique peuvent être le type d'erreurs le plus difficile à localiser. Ces erreurs ne sont pas le résultat d'une erreur de syntaxe ou d'exécution. Au lieu de cela, ils se produisent lorsque vous faites une erreur dans la logique qui anime votre script et que vous n'obtenez pas le résultat attendu. Vous ne pouvez pas détecter ces erreurs, car le type de logique que vous souhaitez mettre dans votre programme dépend des besoins de votre entreprise. Par exemple, diviser un nombre par zéro ou un script écrit qui entre en boucle infinie.

Objet Err

Supposons que si nous avons une erreur d'exécution, alors l'exécution s'arrête en affichant le message d'erreur. En tant que développeur, si nous voulons capturer l'erreur, alorsError L'objet est utilisé.

Exemple

Dans l'exemple ci-dessous, Err.Number donne le numéro d'erreur et Err.Description donne une description de l'erreur.

<script type = "text/vbscript">
  
  Err.Raise 6     ' Raise an overflow error.
  MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description
  Err.Clear       ' Clear the error.

</script>

VBScript a quelques autres instructions importantes pour aider les développeurs à développer un script efficace. Le tableau suivant répertorie un ensemble de déclarations importantes. Dans ce chapitre, nous discuterons chacune de ces déclarations en détail avec des exemples.

Catégorie Nom de la fonction / Nom de l'instruction
Options Option explicite
ID du moteur de script ScriptEngine
variantes IsArray, IsEmpty, IsNull, IsNumeric, IsObject, TypeName
Expression Évaluer, exécuter
Déclaration de contrôle Avec ... Fin avec
Fonction mathématique Randomiser

Option explicite

Option Explicit force le développeur à déclarer les variables en utilisant Dim avant qu’ils ne soient utilisés dans une partie du code.

Syntaxe

Option Explicit

Exemple

Si nous utilisons Option Explicit et si nous ne déclarons pas les variables, l'interpréteur lancera une erreur.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Option Explicit
         Dim x,y,z,a
         x = 10
         y = 20
         z = fnadd(x,y)
         a = fnmultiply(x,y)

         Function fnadd(x,y)
            fnadd = x+y
         End Function

      </script>
   </body>
</html>

ScriptEngine

ScriptEnginereprésente les détails du langage de script utilisé. Il est également utilisé en combinaison avecScriptEngineMajorVersion, ScriptEngineMinor Version, ScriptEngineBuildVersion qui donne respectivement la version majeure du moteur vbscript, la version mineure le moteur vbscript et la version build de vbscript.

Syntaxe

ScriptEngine

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim scriptdetails
         scriptdetails =  " Version " & ScriptEngine & " - "
         'For getting Major version, use ScriptEngineMajorVersion'
        
         scriptdetails = scriptdetails &  ScriptEngineMajorVersion & "."
        
         'For getting Minor version, use ScriptEngineMinorVersion'
         scriptdetails = scriptdetails & ScriptEngineMinorVersion & "."
        
         'For getting Build version, use ScriptEngineBuildVersion'
         scriptdetails = scriptdetails & ScriptEngineBuildVersion 
        
         Document.write scriptdetails

      </script>
   </body>
</html>

Enregistrez le fichier avec l'extension .html lors de l'exécution du script dans IE, le résultat suivant s'affiche à l'écran.

Version VBScript - 5.8.16996

Est vide

La fonction IsEmpty est utilisée pour vérifier si l'expression est vide ou non. Il renvoie une valeur booléenne.IsEmptyrenvoie True si la variable n'est pas initialisée ou définie explicitement sur Empty. Sinon, l'expression renvoie False.

Syntaxe

IsEmpty(expression)

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, MyCheck
         MyCheck = IsEmpty(var)  
         Document.write "Line 1 : " & MyCheck & "<br />"
        
         var = Null   ' Assign Null.
         MyCheck = IsEmpty(var) 
         Document.write "Line 2 : " & MyCheck & "<br />"
         
         var = Empty   ' Assign Empty.
         MyCheck = IsEmpty(var)
         Document.write "Line 3 : " & MyCheck & "<br />"
        
      </script>
   </body>
</html>

Enregistrez le fichier avec l'extension .html lors de l'exécution du script dans IE, le résultat suivant s'affiche à l'écran.

Line 1 : True
Line 2 : False
Line 3 : True

IsNull

La fonction IsNull est utilisée pour vérifier si l'expression possède ou non des données valides. Il renvoie une valeur booléenne.IsNull renvoie True si la variable est Null, sinon l'expression renvoie False.

Syntaxe

IsNull(expression)

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, res
         res = IsNull(var)
         document.write "Line 1 : " & res & "<br />"
         
         var = Null
         res = IsNull(var)
         document.write "Line 2 : " & res & "<br />"
         
         var = Empty
         res = IsNull(var)
         document.write "Line 3 : " & res & "<br />"

      </script>
   </body>
</html>

Enregistrez le fichier avec l'extension .html lors de l'exécution du script dans IE, le résultat suivant s'affiche à l'écran.

Line 1 : False
Line 2 : True
Line 3 : False

IsObject

La fonction IsObject est utilisée pour vérifier si l'expression a ou non un objet valide. Il renvoie une valeur booléenne.IsObject renvoie True si l'expression contient un sous-type d'objet, sinon l'expression renvoie False.

Syntaxe

IsObject(expression)

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
        Dim fso,b
        b = 10
        set fso = createobject("Scripting.Filesystemobject")
        
        x = isobject(fso)
        Document.write "Line 1 : " &  x  & "<br />" 
        
        y = isobject(b)
        Document.write "Line 2 : " &  y  & "<br />" 

      </script>
   </body>
</html>

Enregistrez le fichier avec l'extension .html lors de l'exécution du script dans IE, le résultat suivant s'affiche à l'écran.

Line 1 : True
Line 2 : False

IsNumeric

La fonction IsNumeric est utilisée pour vérifier si l'expression possède ou non un sous-type numérique. Il renvoie une valeur booléenne.IsObject renvoie True si l'expression contient un sous-type de nombre, sinon l'expression renvoie False.

Syntaxe

IsNumeric(expression)

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim var, chk
         var = 20
         chk = IsNumeric(var)
         Document.write "Line 1 : " &  chk  & "<br />" 
        
         var = "3.1415935745"   
         chk = IsNumeric(var)   
         Document.write "Line 2 : " &  chk  & "<br / >" 
        
         var = "20 Chapter 23.123 VBScript"   
         chk = IsNumeric(var)
         Document.write "Line 3 : " &  chk  & "<br / >" 

      </script>
   </body>
</html>

Enregistrez le fichier avec l'extension .html lors de l'exécution du script dans IE, le résultat suivant s'affiche à l'écran.

Line 1 : True
Line 2 : True
Line 3 : False

TypeName

La fonction TypeName est utilisée pour renvoyer les informations de sous-type de variante de la variable.

Syntaxe

TypeName(varname)

La fonction Typename peut renvoyer l'une des valeurs suivantes.

  • Octet - Valeur d'octet

  • Entier - Valeur entière

  • Long - Valeur entière longue

  • Simple - Valeur à virgule flottante simple précision

  • Double - Valeur à virgule flottante double précision

  • Devise - Valeur de la devise

  • Décimal - Valeur décimale

  • Date - Valeur de la date ou de l'heure

  • Chaîne - Chaîne de caractères Valeur

  • Boolean - Valeur booléenne

  • Vide - Valeur non initialisée

  • Null - Aucune donnée valide

  • Object - nom de type de l'objet

  • Nothing - Variable d'objet qui ne fait pas encore référence à une instance d'objet

  • Error

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim ArrVar(2), vartype
         NullVar = Null   ' Assign Null value.

         vartype = TypeName(3.1450)     
         Document.write "Line 1 : " &  vartype  & "<br />" 
         
         vartype = TypeName(432)         
         Document.write "Line 2 : " &  vartype  & "<br />" 
         
         vartype = TypeName("Microsoft")
         Document.write "Line 3 : " &  vartype  & "<br />" 
         
         vartype = TypeName(NullVar)   
         Document.write "Line 4 : " &  vartype  & "< br />" 
         
         vartype = TypeName(ArrVar)    
         Document.write "Line 5 : " &  vartype  & "<br />"

      </script>
   </body>
</html>

Enregistrez le fichier avec l'extension .html lors de l'exécution du script dans IE, le résultat suivant s'affiche à l'écran.

Line 1 : Double
Line 2 : Integer
Line 3 : String
Line 4 : Null
Line 5 : Variant()

Eval

La fonction Eval exécute une expression et renvoie le résultat sous forme de chaîne ou de nombre.

Syntaxe

Eval(expression)

L'argument Expression peut être une expression de chaîne ou un nombre. Si vous transmettez à la fonction Eval une chaîne qui ne contient pas d'expression numérique ou de nom de fonction mais uniquement une simple chaîne de texte, une erreur d'exécution se produit. Par exemple, Eval ("VBScript") génère une erreur.

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Document.write Eval("10 + 10") & "<br />"
         Document.write Eval("101 = 200") & "<br />" 
         Document.write Eval("5 * 3") & "<br />" 

      </script>
   </body>
</html>

Enregistrez le fichier avec l'extension .html lors de l'exécution du script dans IE, le résultat suivant s'affiche à l'écran.

20
false
15

Exécuter

L'instruction Execute accepte l'argument qui est une expression de chaîne contenant une ou plusieurs instructions à exécuter.

Syntaxe

Execute(expression)

Dans VBScript, a = b peut être interprété de deux manières. Il peut être traité comme une instruction d'affectation où la valeur de x est affectée à y. Il peut également être interprété comme une expression qui teste si a et b ont la même valeur. S'ils le font, le résultat est Vrai; s'ils ne le sont pas, le résultat est Faux. L'instruction Execute utilise toujours la première interprétation tandis que l'instruction Eval utilise toujours la seconde.

Exemple

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim x
         x = "Global" 
         y = "VBScript"
         Execute("x = y")
         
         msgbox x
         msgbox y
        
      </script>
   </body>
</html>

Enregistrez le fichier avec l'extension .html lors de l'exécution du script dans IE, le résultat suivant s'affiche à l'écran.

VBScript
VBScript

Avec..Fin avec

L'instruction With nous permet d'effectuer une série d'opérations sur un objet spécifié sans mentionner explicitement le nom de l'objet encore et encore.

Syntaxe

With (objectname)
   statement 1
   statement 2
   statement 3
   ...
   ...
   statement n
End With

Exemple

Lors de l'exécution du script suivant, Winword s'ouvre et le texte spécifié est saisi.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Msg =  "Vbscript" & vbCrLf & "Programming"
         Set objWord = CreateObject("Word.Application")
         objWord.Visible = True
       
         ' Objects methods are accessed without requaliyfying the objects again.'
         With objWord
            .Documents.Add
            .Selection.TypeText Msg
            .Selection.WholeStory
         End With
         
      </script>
   </body>
</html>

Randomiser

L'instruction Randomize initialise le générateur de nombres aléatoires, ce qui permet aux développeurs de générer un nombre aléatoire.

Syntaxe

Randomize [number]

Exemple

Lors de l'exécution du script suivant, Winword s'ouvre et le texte spécifié est saisi.

<!DOCTYPE html>
<html>
   <body>
      <script language = "vbscript" type = "text/vbscript">
         Dim MyValue
         Randomize   
         MyValue = Int((100 * Rnd) + 1)   ' Generate random value between 1 and 100.
         MsgBox MyValue
        
      </script>
   </body>
</html>

Enregistrez le script ci-dessus au format HTML et lors de l'exécution du script dans IE, la sortie suivante s'affiche.

42