
No.4ベストアンサー
- 回答日時:
キーボードから入力する項目が決まっているのであれば、そのキー入力が入ったファイルを作っておいてリダイレクトします。
「上書きしますか[y/n]」が1回だけあるなら、「y」一文字+改行の入ったファイル(ここではy.txt)を作業ディレクトリに作っておき、
Shell("command.com /c myprog.exe arg1 < y.txt")
というようにします。
まず、DOSプロンプト上で
command.com /c myprog.exe arg1 < y.txt
がちゃんと動くか確認しましょう。
いろいろとありがといございました。
これで1,2週間悩んでいた問題が解決できました。
(すいません、初心者なもんで。。。)
本当にありがとうございます。
No.3
- 回答日時:
今回の質問の本質とは関係ないのですが一応ご説明しておきましょう。
attribはファイル属性を変更する外部コマンド(=プログラム)です。
attrib -h -s myfile.txt
で、myfile.txtというファイルの隠しファイル属性とシステム属性を外すことができます。今回のVBA関数の例としては何でもよかったので、これを使用しただけです。
さて、ここからは本筋。
command.com /c myprog
でcommand.comを起動してさらにmyprogを実行できます。myprogというプログラムにコマンドラインパラメータが必要であれば、
command.com /c myprog myarg1 myarg2
のようにすればパラメータ付きで実行できます。
No.2
- 回答日時:
ドライブやディレクトリを移動しなければならないのは仕方ありません。
ExcelのVBEからこんな感じでうまく動きますけど。
Sub Hoge
ChDrive ("c")
ChDir ("c:\temp")
Call Shell("command.com /c attrib -h -s myfile.txt")
End Sub
「パラメータが多すぎます」というのはVBAのエラーなんでしょうか?それとも
呼び出しているコマンドのエラーなんでしょうか。
このShell呼び出しだと、コマンドプロンプト画面は出ても一瞬で消えてしまって
DOS側でエラーが出てもわかりませんから、テスト中は
Shell("command.com /k hoge param")
の形でやるといいでしょう。
あと、サポート技術情報にこんな情報がありました。
この問題かもしれないのでちょっと見てみてください(ただし英文)。
http://support.microsoft.com/support/kb/articles …
http://support.microsoft.com/support/kb/articles …
この回答への補足
command.comの後の「 /c attrib -h -s myfile.txt」は
何を現しているのですか?
特に ”/c attrib -h -s”の部分が分かりません。
お教え下さい。
No.1
- 回答日時:
Shell関数ででコマンドインタプリタ(commandだかcmdだか)を起動してるんだと予測します。
だったら、
Shell("command /c hoge.exe param1 param2")
という感じでいきましょう。
この回答への補足
ご指摘の通り、"COMMAND.COM"を起動させてます。
しかし、この場合、どのドライブから始まるかわからないので
起動させたいファイルがあるドライバに移動させてやる必要が
あります。
また、助言の通りやりますと「パラメータが多すぎます」とでます。
どういう意味か分かりません・・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 7 Windows7でMicrosoft VirtualPC2007 SP1を使用する 9 2022/11/17 13:12
- その他(OS) WindowsとMS-DOSの違いって何ですか? 5 2022/10/26 02:19
- モニター・ディスプレイ 画像解像度について 4 2022/05/30 16:05
- その他(OS) MS-DOSでなければ動かないPCゲームをXPで動かす方法を教えてください。 3 2022/08/06 18:46
- その他(Microsoft Office) MS365ライセンス数のカウント方法 1 2023/02/04 08:32
- マウス・キーボード マウスって便利な入力器具ですね。マウスに変わって使われる次世代の入力器具はどんな物になるでしょう 6 2022/10/05 14:44
- 仕事術・業務効率化 ミステリーショッパー(MS)は必要? 2 2023/01/23 08:20
- その他(クラウドサービス・オンラインストレージ) Onedriveで実現したい事。2台のPC間で。 2 2023/04/10 20:42
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Excel(エクセル) エクセルのファイルを複数のPCで同期する方法は? 7 2022/11/23 17:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイル入出力をサーブレット...
-
Python、ダンプ? SyntaxError:...
-
a.outはどこへ?
-
JAVA Jarファイルについて
-
パラメータが正しくありません...
-
VBAを使用して、MS-DOSを起動...
-
Access クエリ実行が急に非常に...
-
VBスクリプトのWshShell.Runに...
-
VBAでMP3を鳴らしたい
-
なぜプロセスはファイルにアク...
-
exeファイルを作成できるプログ...
-
SWTとSwingの違い
-
MATLAB から exe ファイルの実...
-
シェルスクリプトで「HTMLのテ...
-
htaファイルが実行されません
-
エクセルVBAよりBATファイルを...
-
CLRアプリの拡張子
-
javaでexeファイルの作成
-
ディレクトリを変更して外部コ...
-
VBAで他のプログラムが起動して...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access クエリ実行が急に非常に...
-
JavaScriptでコマンドプ...
-
OLE又はDDEを使うVISUAL BESIC...
-
c/c++ ビルドしたにもかかわら...
-
コマンドプロンプトで外のexeや...
-
VB6.0で作ったプロジェクトが起...
-
VBAでEXEファイルを動かす方法...
-
VC++から引数付きexeファイルの...
-
以下のように複数のファイルを...
-
LINK : fatal error LNK1104に...
-
VBAで他のプログラムが起動して...
-
JAVA .jarファイルに再圧縮する...
-
batからexeを起動した際の戻り...
-
コンポーネント`MSCOMM32.cox'...
-
WScript.Echo と msgbox
-
jarの開き方を教えてください。
-
batからexeを実行し戻り値を受...
-
JARファイルをEclipseを使って...
-
なぜプロセスはファイルにアク...
-
Web上からExeを実行する場合に...
おすすめ情報