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

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を実行します。

Licensed under CC BY-NC-SA 4.0
最終更新 2018年7月28日 07:42
Hugo で構築されています。
テーマ StackJimmy によって設計されています。