CallByName-Funktion
Führt eine Methode eines Objekts aus oder legt eine Eigenschaft eines Objekts fest oder gibt sie zurück.
Syntax
CallByName ( Objekt , Prozessname , Anruftyp [, Argumente ()] )
Die Syntax der CallByName- Funktion hat die folgenden Argumente:
Streit | Beschreibung |
Objekt | Erforderlich. Variante ( Objekt ). Der Name des Objekts, auf dem die Funktion ausgeführt wird. |
procname | Erforderlich. Variante ( Zeichenfolge ). Ein Zeichenfolgenausdruck, der den Namen einer Eigenschaft oder Methode des Objekts enthält. |
Anrufart | Erforderlich. Konstant . Eine Konstante vom Typ vbCallType , die den Typ der aufgerufenen Prozedur darstellt. |
Argumente () | Optional. Variante ( Array ). |
Bemerkungen
Die CallByName- Funktion wird zum Abrufen oder Festlegen einer Eigenschaft oder zum Aufrufen einer Methode zur Laufzeit mithilfe eines Zeichenfolgennamens verwendet.
Im folgenden Beispiel verwendet die erste Zeile CallByName , um die MousePointer- Eigenschaft eines Textfelds festzulegen, die zweite Zeile ruft den Wert der MousePointer- Eigenschaft ab, und die dritte Zeile ruft die Move -Methode auf, um das Textfeld zu verschieben:
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100
Beispiel
Hinweis: Die folgenden Beispiele veranschaulichen die Verwendung dieser Funktion in einem Visual Basic for Applications (VBA)-Modul. Um weitere Informationen zum Arbeiten mit VBA zu erhalten, wählen Sie Entwicklerreferenz in der Dropdown-Liste neben Suchen aus und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.
In diesem Beispiel wird die CallByName- Funktion verwendet, um die Move -Methode einer Befehlsschaltfläche aufzurufen.
Das Beispiel verwendet auch ein Formular ( Form1 ) mit einer Schaltfläche ( Command1 ) und einer Bezeichnung ( Label1 ). Wenn das Formular geladen wird, wird die Caption -Eigenschaft des Labels auf den Namen der aufzurufenden Methode gesetzt, in diesem Fall "Move". Wenn Sie auf die Schaltfläche klicken, ruft die CallByName- Funktion die Methode auf, um die Position der Schaltfläche zu ändern.
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
No comments:
Post a Comment