エクセルVBAで、バッチ処理を起動すると・・・
Windows/XP/pro、エクセル2002 使用です。
c:\autocsvフォルダーに、MS-DOSコマンドを使ってFTPを自動実行しサーバーからCSVを自動的に取得する.TXTファイルと、バッチファイルの.batファイルをおいています。
参考URL http://www.ponko2.com/ftp_bat.html
この.batファイルをVBAから呼び出して実行させるように下記のコードを記述ましたが、ファイルは起動するものの、CSVファイルを取得(またはLogin)できません。Openメソッドを使ってもうまくいきませんでした。実行する関数の間違いと思っていますが、それとも、VBAからバッチファイルを実行する場合の何か決まりごと等があるのでしょうか?
Sub test()
Dim str As Variant
str = Shell("c:\autocsv\auto.bat", vbNormalFocus)
Application.Wait Now + TimeValue("00:00:10")
End Sub
(VBAの実行をステップインを使って1行ずつ実行してもファイルを取得できません)
なお、.batファイルを単独で起動させた場合は、問題なくcsvファイルの取得はできています。
お手数ですが、ご指導いただけますようお願いします。