Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Un paramètre permet au code appelant de passer une valeur à la procédure lorsqu’il l’appelle. Vous déclarez chaque paramètre d’une procédure de la même façon que vous déclarez une variable, en spécifiant son nom et son type de données. Vous spécifiez également le mécanisme de passage et indiquez si le paramètre est facultatif.
Pour plus d’informations, consultez Paramètres et arguments de procédure.
Pour définir un paramètre de procédure
Dans la déclaration de procédure, ajoutez le nom du paramètre à la liste des paramètres de la procédure, en le séparant d’autres paramètres par des virgules.
Déterminez le type de données du paramètre.
Suivez le nom du paramètre avec une
As
clause pour spécifier le type de données.Déterminez le mécanisme de passage souhaité pour le paramètre. Normalement, vous passez un paramètre par valeur, sauf si vous souhaitez que la procédure puisse modifier sa valeur dans le code appelant.
Précèdez le nom du paramètre par ByVal ou ByRef pour spécifier le mécanisme de passage. Pour plus d’informations, consultez Différences entre le passage d’un argument par valeur et par référence.
Si le paramètre est facultatif, précèdez le mécanisme de passage avec Optional et suivez le type de données de paramètre avec un signe égal (
=
) et une valeur par défaut.L’exemple suivant définit le plan d’une
Sub
procédure avec trois paramètres. Les deux premiers sont obligatoires et le troisième est facultatif. Les déclarations de paramètre sont séparées dans la liste des paramètres par virgules.Sub updateCustomer(ByRef c As customer, ByVal region As String, Optional ByVal level As Integer = 0) ' Insert code to update a customer object. End Sub
Le premier paramètre accepte un
customer
objet etupdateCustomer
peut mettre à jour directement la variable passéec
, car l’argument est passé par ByRef. La procédure ne peut pas modifier les valeurs des deux derniers arguments, car elles sont passées par ByVal.Si le code appelant ne fournit pas de valeur pour le
level
paramètre, Visual Basic le définit sur la valeur par défaut 0.Si le commutateur de vérification de type (Instruction Option Strict) est défini sur
Off
, vous pouvez omettre la clauseAs
lorsque vous définissez un paramètre. Toutefois, si un paramètre utilise uneAs
clause, toutes doivent l’utiliser. Si le commutateur de vérification de type estOn
, laAs
clause est requise pour chaque définition de paramètre.La spécification de types de données pour tous vos éléments de programmation est connue sous le nom de typage fort. Lorsque vous définissez
Option Strict On
, Visual Basic applique une saisie forte. Ceci est fortement recommandé pour les raisons suivantes :Il permet l'assistance d’IntelliSense pour vos variables et paramètres. Cela vous permet de voir leurs propriétés et d’autres membres lorsque vous tapez votre code.
Il permet au compilateur d’effectuer la vérification de type. Cela permet d’intercepter les instructions qui peuvent échouer au moment de l’exécution en raison d’erreurs telles que le dépassement de capacité. Cela active la prise en charge d’IntelliSense pour vos variables.
Cela entraîne une exécution plus rapide de votre code. Pour cette raison, si vous ne spécifiez pas de type de données pour un élément de programmation, le compilateur Visual Basic l’affecte au
Object
type. Votre code compilé pourrait avoir à effectuer des conversions aller-retour entreObject
et d'autres types de données, ce qui réduit les performances.