CallByName 函式
執行 物件的方法,或設定或傳回 物件的屬性。
語法
CallByName (object, procname, calltype, [args () ]_)
CallByName函式語法具有下列命名引數:
部分 | 描述 |
---|---|
物件 | 必要: Variant (Object) 。 要在其中執行函式的物件名稱。 |
procname | 必要: Variant (String) 。 字串運算式,包含 物件的屬性或方法名稱。 |
calltype | 必要: 常數。 vbCallType類型的常數,代表要呼叫的程式類型。 |
args () | 選擇性: Variant (Array) 。 |
註解
CallByName函式可用來取得或設定屬性,或在執行時間使用字串名稱叫用方法。
在下列範例中,第一行使用 CallByName 來設定文字方塊的 MousePointer 屬性,第二行會取得 MousePointer 屬性的值,而第三行則會叫用 Move 方法來移動文字方塊。
CallByName Text1, "MousePointer", vbLet, vbCrosshair
Result = CallByName (Text1, "MousePointer", vbGet)
CallByName Text1, "Move", vbMethod, 100, 100
範例
這個範例會使用CallByName函式來叫用[命令] 按鈕的Move方法。
此範例也會使用具有按鈕 () Form1
的表單 () Command1
,以及 () Label1
的標籤。 載入表單時,標籤的 Caption 屬性會設定為 「Move」,以及要叫用的方法名稱。 當您按一下按鈕時, CallByName 函式會叫用 方法來變更按鈕的位置。
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
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。