で実行するコマンドプロンプトは、システムの変数のPathしか有効じゃない!
Windowsシステム・ツールにあるコマンドプロンプトまたは、ファイル名をcmdで指定して実行するとPathは通っているのに、
VBA.Shell “cmd “,vbNormalFocus
で開いたコマンドプロンプトでは実行できない。Pathが通っていない話。
コントロール パネル\システムとセキュリティ\システム
ユーザーの環境変数もあるが、VBAのShell関数ではユーザーの環境変数は有効じゃなかった。という話。
なぜ何か。勘違いかわからないがユーザーのPathにあっても実行できないことを確認した。
いイミディエイトウィンドウに
VBA.Shell “cmd “,vbNormalFocus
を書き込んで実行するとコマンドプロンプトが起動する。ユーザー定義のPathしか通していない.exeファイルを確認して実行するとわかる。
Windowsシステム・ツールにあるコマンドプロンプト(cmd.exeはC:\Windows\System32にある)は当然、ユーザーのPathとシステムのPathの両方が有効なので実行できる。