CallByName, fonction

Exécute une méthode d’un objet, ou définit ou renvoie une propriété d' objet.

Syntaxe

CallByName ( objet, procname, calltype [, args()])

La syntaxe de la fonction CallByName est la suivante :

Argument

Description

objet

Obligatoire. Variant(Objet). Nom de l’objet sur lequel la fonction sera exécutée.

procname

Obligatoire. Variant(Chaîne). Expression de chaîne contenant le nom d’une propriété ou d’une méthode de l’objet.

calltype

Obligatoire. Constante. Constante de type vbCallType représentant le type de procédure appelée.

args ()

Facultatif. Variant(matrice).


Remarques

La fonction CallByName permet d’obtenir ou de définir une propriété, ou d’appeler une méthode au moment de l’utilisation d’un nom de chaîne.

Dans l’exemple suivant, la première ligne utilise CallByName pour définir la propriété MousePointer d’une zone de texte, la deuxième ligne obtient la valeur de la propriété MousePointer et la troisième appelle la méthode Déplacer pour déplacer la zone de texte :

CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100

Exemple

Remarque : Les exemples qui suivent illustrent l’utilisation de cette fonction dans un module Visual Basic pour Applications (VBA). Pour plus d’informations sur l’travail avec VBA, sélectionnez Référence du développeur dans la liste de listes en regard de Rechercher, puis entrez un ou plusieurs termes dans la zone de recherche.

Cet exemple utilise la fonction CallByName pour appeler la méthode de déplacement d’un bouton de commande.

L’exemple utilise également un formulaire (Form1) avec un bouton (Command1), et une étiquette (Label1). Une fois le formulaire chargé, la propriété Légende de l’étiquette est définie sur le nom de la méthode à appeler, dans ce cas, « Déplacer ». Lorsque vous cliquez sur le bouton, la fonction CallByName appelle la méthode pour modifier l’emplacement du bouton.

Option Explicit
Private Sub Form_Load()
Label1.Caption = "Move"' Name of Move method.
End Sub
Private Sub Command1_Click()
If Command1.Left <> 0 Then
CallByName Command1, Label1.Caption, vbMethod, 0, 0
Else
CallByName Command1, Label1.Caption, vbMethod, 500, 500
End If

Besoin d’aide ?

Développez vos compétences dans Office
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×