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