【VBS】マクロを直接起動するスクリプト
ExcelやWordファイルに書いたVBAマクロを直接呼び出す(起動する)ためのVBSコードです。
Dim FilePath
FilePath = "C:\Users\Documents\Sample.xlsm"
Dim app
Set app = CreateObject("Excel.Application")
app.Visible = False
app.Workbooks.Open FilePath
app.Run "Module1.test"
app.Quit
Set app = Nothing
このVBSをダブルクリックするだけで、指定したマクロを起動できます。
わざわざこんなVBS用意しなくても、マクロ自体にOpenイベントを仕込んでおけば良いだけじゃん!…って思うかもしれませんが、一応メリットがあります。
・マクロ起動を高速化できる。
ExcelやWord起動時の余計なアドイン読込み等が省略できる。
・マクロ実行中、タスクバーにExcelやWord等のアイコンが表示されない。
見た目がすっきりする。
・VBSファイルなので、ダブルクリックでサクサク実行できる。
とくにVBAマクロで業務を自動化する場合、完全にバックヤードで(不可視化された状態で)処理実行できた方が気持ちいいですよね。
気分の問題ですが、毎日マクロ実行していると、タスクバーにExcelやWordアイコンが表示されるのが地味に気になってきます。
このVBSを使えば、パッと見は完全に自動化している感じになります。
使い方
メモ帳に上記をコピペして
「FilePath="~~"」の~~の部分に起動したいマクロ(Excelファイル)の保存場所(Excel拡張子までを含めたフルパス)を記載する。
「app.Run "〇〇"」の〇〇の部分に起動したいマクロのモジュール名とプロシージャ名を記載する。モジュール名とプロシージャ名の間は.(ドット)で区切る。
名前を付けて保存から、文字コードをANSI形式を選択して保存。(日本語対応対策)
拡張子を.vbsへ変更。
あとはこのVBSをダブルクリックで開くだけ。
至って単純なスクリプトです。
実は先日購入したマクロキーボードのキー割り当て用に、このスクリプトを作りました。
マクロキーボードと組み合わせると、中々有能なスクリプトだと思います。
マクロキーボードについては後日記載します。
この記事が気に入ったらサポートをしてみませんか?