Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Führt eine Methode eines Objekts aus oder legt eine Eigenschaft eines Objekts fest oder gibt sie zurück.
Syntax
CallByName (object, procname, calltype, [args()]_)
Die Syntax der CallByName-Funktion hat folgende benannten Argumente:
Bestandteil | Beschreibung |
---|---|
Objekt | Erforderlich: Variant (Objekt). Der Name des Objekts, auf dem die Funktion ausgeführt wird. |
procname | Erforderlich: Variant (String). Ein Zeichenfolgenausdruck, der den Namen einer Eigenschaft oder Methode des Objekts enthält. |
Calltype | Erforderlich: Konstant. Eine Konstante vom Typ vbCallType, die den aufgerufenen Prozedurtyp darstellt. |
args() | Optional: Variante (Array). |
Hinweise
Die CallByName-Funktion wird verwendet, um eine Eigenschaft abzurufen oder festzulegen oder eine Methode zur Laufzeit mithilfe eines Zeichenfolgennamens aufzurufen.
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
In diesem Beispiel wird die CallByName-Funktion verwendet, um die Move-Methode einer Command-Schaltfläche aufzurufen.
Im Beispiel wird auch ein Formular (Form1
) mit einer Schaltfläche (Command1
) und einer Bezeichnung (Label1
) verwendet. Wenn das Formular geladen wird, wird die Caption-Eigenschaft der Bezeichnung auf "Move" und der Name der aufzurufenden Methode festgelegt. Wenn Sie auf die Schaltfläche klicken, ruft die CallByName -Funktion die Methode zum Ändern der Position der Schaltfläche auf.
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
Siehe auch
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.