別のブックのマクロを実行(Run メソッド)
別のブックのマクロを実行
別のブックのマクロを実行するには、Run メソッド を使用します。( ※ 参照設定を行うと、Call ステートメント でも 別ブックのマクロを呼び出すことができます。詳細は、プロシージャを呼び出す(Call ステートメント を参照してください。)
【書式】
object.Run ( macro [, arg1, arg2, … , arg29, arg30 ] )
引数・戻り値
- object ・・・ 対象となる Application オブジェクトを指定します。
- macro ・・・ 実行するマクロを指定します。ブックが開いている時やカレントフォルダのブックの場合は、「ブック名!マクロ名」のように、マクロ名の前には、「!」(エクスクラメーションマーク)を付けます。また、ブックが閉じている場合は、「‘パス+ブック名’!マクロ名」のように、パスを含めたブック名を「’」(シングルクォーテーション)で囲み、マクロ名の前には、「!」を付けて指定します。
- arg1 … arg30 ・・・ 引数を指定します。(省略可)
- object ・・・ 対象となる Application オブジェクトを指定します。
- macro ・・・ 実行するマクロを指定します。ブックが開いている時やカレントフォルダのブックの場合は、「ブック名!マクロ名」のように、マクロ名の前には、「!」(エクスクラメーションマーク)を付けます。また、ブックが閉じている場合は、「‘パス+ブック名’!マクロ名」のように、パスを含めたブック名を「’」(シングルクォーテーション)で囲み、マクロ名の前には、「!」を付けて指定します。
- arg1 … arg30 ・・・ 引数を指定します。(省略可)
Run メソッド 使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Sub Sample01_Run() 'mybook.xlsm が閉じている場合 Dim BookName As String BookName = "C:\Documents\mybook.xlsm" 'パスは、「'」で囲む / マクロ名の前に「!」をつける Application.Run "'" & BookName & "'" & "!mybook_Macro1" End Sub Sub Sample02_Run() 'mybook.xlsm が開いている場合 'マクロ名の前に「!」をつける Application.Run "mybook.xlsm!mybook_Macro1" End Sub |
|
1 2 3 4 5 6 7 |
Sub mybook_Macro1() MsgBox ThisWorkbook.Name & " のマクロを実行" End Sub |
実行結果

関連記事
-
-
画面の上端・左端を設定(ScrollRow プロパティ、ScrollColumn プロパティ)
画面の上端・左端を設定 ScrollRow プロパティで、指定した行を画面上端に …
-
-
印刷設定(偶数ページのヘッダー・フッターを設定)OddAndEvenPagesHeaderFooter, EvenPage
偶数ページに別のヘッダーおよびフッターを設定 偶数ページのヘッダーおよびフッター …
-
-
ウィンドウ枠の固定(FreezePanes プロパティ、SplitColumn プロパティ,SplitRow プロパティ)
ウィンドウ枠の固定と解除 ウィンドウ枠を固定するには FreezePanes プ …
-
-
ブックのファイル形式を調べる(FileFormat プロパティ)
ブックのファイル形式を調べる(FileFormat プロパティ) 指定したブック …
-
-
WorksheetView オブジェクト
WorkSheetView オブジェクト 行列番号や枠線の表示・非表示の設定など …
-
-
最近使用したファイル(RecentFile オブジェクト,RecentFiles コレクション)
最近使用したファイル(RecentFile オブジェクト,RecentFiles …
-
-
ワークシートの数を数える(Count プロパティ)
Count プロパティ 指定したWorksheets コレクションやSheets …
-
-
印刷時、シート内のエラーをどう扱うかを設定(PrintErrors プロパティ)
PageSetup.PrintErrors プロパティ PageSetup.Pr …
-
-
ウィンドウを拡大・縮小(Zoom プロパティ)
ウィンドウを拡大・縮小(Zoom プロパティ) ウィンドウの表示サイズをパーセン …
-
-
並べて比較(CompareSideBySideWith,SyncScrollingSideBySide,BreakSideBySide)
並べて比較(CompareSideBySideWith メソッド) Compar …