CallByName 関数

オブジェクトのメソッドを実行するか、オブジェクト のプロパティを設定または取得します。

構文

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

CallByName 関数構文の引数は次のとおりです。

引数

説明

object

必須。Variant (Object)。関数を実行するオブジェクトの名前です。

procname

必須。Variant (String)。オブジェクトのプロパティまたはメソッドの名前を含む文字列式です。

calltype

必須。定数。呼び出すプロシージャの種類を表す vbCallType 型の定数です。

args ()

省略可能。Variant (Array)。


解説

CallByName 関数は、文字列名を使って実行時に、プロパティを取得または設定するため、またはメソッドを呼び出すために使います。

次の例の 1 行目では、CallByName を使ってテキスト ボックスの MousePointer プロパティを設定します。2 行目では、MousePointer プロパティの値を取得します。3 行目では、Move メソッドを呼び出してテキスト ボックスを移動します。

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

注: 次の例は、Visual Basic for Applications (VBA) モジュールでのこの関数の使用方法を示しています。 VBA の使用方法の詳細については、[検索] の横にあるドロップダウン リストで [開発者用リファレンス] を選び、検索ボックスに検索する用語を入力します。

この例では、CallByName 関数を使って、コマンド ボタンの Move メソッドを呼び出します。

また、ボタン (Command1) とラベル (Label1) を含むフォーム (Form1) を使います。フォームを読み込んだ後、ラベルの 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 Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×