• ベストアンサー

エクセルのVBAからDOSコマンドのDIRを実行したい

DOSコマンドのDIRコマンドを、エクセルのVBAから実行したいのですがうまくいきません。助けてください。 DOSプロンプト上で、たとえば「DIR c:\*.mdb /s/b > c:\aaa.txt」を実行すると、Cドライブ上の拡張子(MDB)のファイルの一覧を、aaa.txt上に出力できるのですが、それをエクセルのVBAから実行したいのです。 Shell関数で、COMMAND.COMを実行することはできるのですが、それ以降の指定がわかりません。COMMAND.COMを実行した後、DOSプロンプトをアクティブにし、「DIR c:\*.mdb /s/b > c:\aaa.txt」をsendkeyで送れば・・・とアドバイスをうけたりもしたのですが、sendkeyでなくてもできた記憶があります。 よい方法があれば教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 確認してませんが、 Str = " COMMAND.COM /C Dir C:\*.mdb /s/b > C:\aaa.txt " tempID = Shell(Str, vbNormalFocus) これでどうでしょうか。 では。

matyap
質問者

お礼

できました!ありがとうございます。 自分がやったときは、COMMAND.COMの後の、「/C」がなかったからうまくいかなかったのかな? 今日中に解決してよかったです。助かりました。

関連するQ&A