Application.Run 方法 (Word)

執行 Visual Basic 巨集。

語法

運算式。執行 (MacroName, varg1, varg2, varg3, varg4, varg5, varg6, varg7, varg8, varg9, varg10, varg11, varg12, varg13, varg14, varg15, varg16, varg17, varg18, varg19, varg20, varg21, varg22, varg23, varg24, varg25、 varg26、 varg27、 varg28、 varg29、 varg30)

需要 expression。 代表 Application 物件的變數。

參數

名稱 必要/選用 資料類型 描述
MacroName 必要 字串 巨集的名稱。
varg1...varg30 選用 Variant 巨集參數值。 您最多可以將 30 個參數值傳遞至指定的巨集。

註解

MacroName 參數可以是任何範本、模組及巨集名稱的組合。 例如,下列任一個陳述式都是有效的。

Application.Run "Normal.Module1.MAIN" 
Application.Run "MyProject.MyModule.MyProcedure" 
Application.Run "'My Document.doc'!ThisModule.ThisProcedure"

如果您指定了文件名稱,您的程式碼只能在與目前內容相關的文件中執行巨集,而不只是任何文件中的任何巨集。

雖然 Visual Basic 程式碼可以直接 (呼叫巨集,而不需要使用 Run 方法) ,但當巨集名稱儲存在變數中時,這個方法很有用。 (如需詳細資訊,請參閱本主題範例) 。 下列三個陳述式在功能上是相同的。 前兩個陳述式需要引用 Normal.dot,即被呼叫巨集所在的專案;第三個陳述式使用 Run 方法,不需要 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

另請參閱

Application 物件

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。