Application.Run メソッド (Word)
Visual Basic マクロを実行します。
構文
式。実行 (MacroName、varg1、 varg2, varg3, varg4, varg5, varg6, varg7, varg8, varg9, varg10, varg11, varg12, varg13, varg14, varg15, varg16, varg17, varg19, varg20, varg21, varg21, varg22, varg22, varg23, varg23, varg24, varg25, varg26, varg27, varg28, varg29, varg30)
expression 必須です。 Application オブジェクトを表す変数を指定します。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
MacroName | 必須 | String | マクロの名前を指定します。 |
varg1...varg30 | オプション | バリアント型 | マクロのパラメーター値を指定します。 指定したマクロに 30 個までパラメーター値を渡すことができます。 |
注釈
MacroName パラメーターには、任意のテンプレート、モジュール、およびマクロ名を組み合わせることができます。 たとえば、次のステートメントはすべて有効です。
Application.Run "Normal.Module1.MAIN"
Application.Run "MyProject.MyModule.MyProcedure"
Application.Run "'My Document.doc'!ThisModule.ThisProcedure"
ドキュメント名を指定した場合、コードは現在のコンテキストに関連するドキュメント内でのみマクロを実行できます。どのドキュメント内のマクロも実行できません。
Run メソッドを使用しなくても、Visual Basic コードから直接マクロを呼び出すことはできますが、マクロ名が変数に格納されている場合はこのメソッドが便利です。 詳細については、このトピックの「使用例」を参照してください。 次の 3 つのステートメントでは、同じ結果が得られます。 最初の 2 つのステートメントでは呼び出されるマクロが含まれるプロジェクトである Normal.dot への参照が必要となり、Run メソッドを使用する 3 番目のステートメントでは Normal.dot プロジェクトへの参照は不要です。
Normal.Module2.Macro1
Call Normal.Module2.Macro1
Application.Run MacroName:="Normal.Module2.Macro1"
例
次の使用例は、テンプレート名、モジュール名、マクロ名、パラメーター値の入力をユーザーに求めてから、そのマクロを実行します。
Dim strTemplate As String
Dim strModule As String
Dim strMacro As String
Dim strParameter As String
strTemplate = InputBox("Enter the template name")
strModule = InputBox("Enter the module name")
strMacro = InputBox("Enter the macro name")
strParameter = InputBox("Enter a parameter value")
Application.Run MacroName:=strTemplate & "." _
& strModule & "." & strMacro, _
varg1:=strParameter
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。