TeraTermマクロをExcelマクロから起動する方法をご紹介します。

起動する際は、前提条件として、下記の「バッチファイルから、teratermのマクロを実行する」
によって、あらかじめTeraTerm起動用のマクロを事前に作成してから実施下さい。

バッチファイルから、TeraTermのマクロを実行する

Excelマクロのサンプルソースは、コチラになります。

Sub TeraTermAction()

    Dim shellObject As Object
    Dim batchFile As String
    
    'TeraTermを起動するバッチファイルのフルパス
    batchFile = "C:\Users\User\Desktop\TeraTerm実行\teramacro.bat"
    
    Set shellObject = CreateObject("WScript.Shell")
    shellObject.Run batchFile, 0, True

End Sub

TeraTermマクロを起動するバッチファイル(.bat)をExcelマクロから単純に起動しているだけですね。

実行イメージとしては、下記のようになります。

スポンサーリンク


なお、「shellObject.Run」の引数としては、

第1引数:バッチファイルのフルパス

第2引数:コマンドプロンプトの設定、今回はTeratermだけ見れれば良いと思いましたので、「0:非表示」にしています。
 0→コマンドプロンプトを非表示
 1→コマンドプロンプトを通常表示
 2→コマンドプロンプトを最小化表示
 3→コマンドプロンプトを最大化表示

第3引数:バッチファイルの処理終了まで待つかどうか
 True→同期(バッチファイルの処理が終了するまで止まる)
 False→非同期(バッチファイルの処理中もVBAコードを実行する。)

今回は、単純にTeraTermを起動しているだけですが、TeraTermからコマンド結果をファイル出力し、その結果を元に別途整形して、Excelに取り込むようなマクロにまでする等、作業内容によってはかなり効率化を期待できますね。

スポンサーリンク