Végrehajtja egy objektum metódusát, vagy beállítja vagy visszaadja egy objektum tulajdonságát.
Szintaxis
CallByName(objektum , procname, calltype [, args()])
A CallByName függvény szintaxisa az alábbi argumentumokat foglalja foglalja tartalmazza:
| Argumentum | Leírás: |
|---|---|
| objektum | Kötelező megadni. Variant (objektum). Annak az objektumnak a neve, amelyen a függvény végre lesz hajtva. |
| procname | Kötelező megadni. Variáns (Karakterlánc). Az objektum egy tulajdonságának vagy metódusának nevét tartalmazó karakterlánc-kifejezés. |
| calltype | Kötelező megadni. Állandó. A meghívandó eljárás típusát jelölő vbCallType típusú állandó. |
| args() | Nem kötelező. Variant (Tömb). |
Megjegyzések
A CallByName függvénnyel lekérhet vagy beállíthat egy tulajdonságot, illetve meghívhat egy metódust futásidőben egy sztringnév használatával.
Az alábbi példában az első sor a CallByName függvényt használja egy szövegdoboz MousePointer tulajdonságának beállításához, a második sor a MousePointer tulajdonság értékét, a harmadik sor pedig az Áthelyezés metódust hívja meg a szövegdoboz áthelyezéséhez:
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100
Példa
Megjegyzés
A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatáról a Keresés elem mellett található legördülő listából a fejlesztői forrásokat választva, majd egy vagy több keresőszót megadva kaphat további tájékoztatást.
Ez a példa a CallByName függvénnyel hívja meg egy parancsgomb Move metódusát.
A példa egy űrlapot () is használ egy gombbal (Form1Command1) és egy címkével (Label1). Az űrlap betöltésekor a címke Caption ( Felirat ) tulajdonsága a meghívni kívánt metódus nevére van beállítva, ebben az esetben az "Áthelyezés" értékre. Amikor a gombra kattint, a CallByName függvény meghívja a metódust a gomb helyének módosításához.
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