メインコンテンツへスキップ
【VBA】引数を渡してファイルを実行する

【VBA】引数を渡してファイルを実行する

·1 分
Programming VBA
かずさプログラマー
著者
かずさプログラマー
業務の作業自動化を行っています。Go、VBA、Pythonを主に使用しています。過去にはC#、VB.Net、JavaScriptも使用していました。

VBAで引数を渡してファイルを実行するにはShell関数Chr関数を使用します。

下記のような引数を1つ受け取ってその引数を表示するPythonのargtest.exeを用意します。

import sys

print(sys.argv[1])
input("Enterを押すとプログラムを終了します")

今回はxlsmと同じファイルにargtest.exeを置いて引数を渡してexeを実行してみます。

引数を渡してファイルを実行するコードは以下になります。

Option Explicit
Sub callExeWithVariable()

  Shell ThisWorkbook.Path & "\argtest.exe " & Chr(34) & "Hello!" & Chr(34)
  
End Sub

exeのあとに半角スペースがありますので入れ忘れないように気をつけてください。
渡したい引数(今回の場合であればHello!)をChr(34)で囲んで、文字列結合します。

コードを実行すると、引数”Hello!”を渡してargtest.exeを実行します。

関連記事

【VBA】迷路を解く
··6 分
Programming VBA アルゴリズム
【VBA】キューを実装する
·3 分
Programming VBA
【VBA】Excelのシート名を変更する
·1 分
Programming VBA