VBScript - Procédures

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 grand 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 façon 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