![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
VBAのExecメソッドでコマンドプロンプトの画面を非表示にして
実行する方法を教えてください、
検索してみると
http://seesaawiki.jp/w/bokkuri_orz/d/VBA%20-%20% …
このページには
Runのように、外部プログラム呼び出し時にそのウィンドウを非表示にする制御は出来ないようです。
と書かれてあります。
http://scripting.cocolog-nifty.com/blog/2007/05/ …
http://scripting.cocolog-nifty.com/blog/2008/08/ …
このページにはやり方が書かれてあるのですが
VBAについてやり方のみでVBAではどのようにして使えば良いか分かりません。
http://blog.onpu-tamago.net/entry/20101020/12875 …
このページにはVBAでもできるというような記載がなされています。
どなたか実行方法を教えてください。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
>("\", "htmlfile")のところを設定の仕方を教えていただけますでしょうか?
これはVBSでクリップボードのデータを何とか簡単に取得できないかと
Googleりまくっただけです (^_^;)
http://scripting.cocolog-nifty.com/blog/2010/04/ …
>標準入力、や、標準エラー出力、の出力の仕方も教えていただけますでしょうか?
これもごめんなさい。そこまでスキル/経験が。。。
先達のご登場に期待しましょう。
No.2
- 回答日時:
あっゴメンなさい。
>Application.VBE.Windows("イミディエイト").Visible = True
の行は不要ですので削除してかまいません。
イミディエイトウィンドウを表示させるためのモノなのですが
Excelのオプションから『セキュリティセンターの設定』
マクロの設定→VBA プロジェクト オブジェクトモデルへのアクセスを信頼する
にチェックを入れていないとエラーになってしまいます。
規定値ではチェックは入っていません。
つい、うっかり。。。
標準出力の結果は取得できてますね。こっちの方は問題なさそうです。
ありがとうございます。
sCmdに自分の実行したいコードを入れてみたのですが
うまくいきません。
oshietegooとは関係のないffprobeを使ったコード
sCmd = ffprobe_path & " -i " & file_path2 & " -show_format | grep duration"
を入れているのに
なぜか出力される変数は以下のものになってしまいます。
: sStr : "
oshiete.goo.ne.jp [153.254.147.236]に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
153.254.147.236 の ping 統計:
パケット数: 送信 = 1、受信 = 0、損失 =
sStr = GetObject("\", "htmlfile").ParentWindow.ClipboardData.GetData("text")
のところで、("\", "htmlfile")とか書かれていますが、
この辺りはどのように設定すれば良いのでしょうか?
No.1
- 回答日時:
exec メソッドを使用する目的が標準出力の取得なら
Sub てすと()
Dim oWS As Object, sCmd As String, sStr As String
Set oWS = CreateObject("Wscript.Shell")
sCmd = "ping oshiete.goo.ne.jp -n 1"
oWS.Run "%ComSpec% /c " & sCmd & "|clip", 0, True
sStr = GetObject("\", "htmlfile").ParentWindow.ClipboardData.GetData("text")
Application.VBE.Windows("イミディエイト").Visible = True
Debug.Print sStr
Set oWS = Nothing
End Sub
では?
clip はWindows Vista 以降で使用可。
リンク先のに手を加えようかとも思いましたが面倒だったのでゴメン。
ありがとうございます。
試してみましたが、
Application.VBE.Windows("イミディエイト").Visible = True
のところでエラーが発生します。
実行時エラー 1004
VBEメソッドは失敗しました、Applicationオブジェクト
というエラーメッセージが表示されます。
実行時エラー 1004
プログラミングによるVisual Basicプロジェクトへのアクセスは信頼性に欠けます
というのが出る場合もあります。
sStr変数には
oshiete.goo.ne.jp [153.254.147.236]に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
153.254.147.236 の ping 統計:
パケット数: 送信 = 1、受信 = 0、損失 = 1 (100% の損失)、
という文字列が入っています。
環境はwin7 64bit、Excel2010です。
何が問題でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォームに日付を表示させる方法を教えてください。そして、実行したあとでも日付が変わるようなプ 4 2023/02/23 12:18
- Excel(エクセル) エクセル VBA実行中のApplication.ScreenUpdatingについて 3 2023/07/13 21:06
- Visual Basic(VBA) Excle VBA Findメソッドについて 3 2022/07/15 13:56
- Visual Basic(VBA) Vba UserFormを前面に出す方法を教えてください 1 2023/08/17 11:08
- Visual Basic(VBA) 複数指定セルの可視セルのみを別シートに転記するVBAについて 2 2022/05/27 21:19
- Excel(エクセル) ExcelのVBAコードについて教えてください。 1 2022/06/17 15:40
- CAD・DTP Autocad Scriptファイルからの入力とコマンドラインからの入力が違う 1 2023/08/01 09:13
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/02/02 13:13
- Excel(エクセル) VBAでユークリッド距離を用いて1番近い物を表示 表 裏 縦 横 高さ 縦 横 高さ 名前 1 45 9 2022/10/23 16:52
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
このQ&Aを見た人はこんなQ&Aも見ています
-
「どうして捨てられないの?」前妻の物を捨てられない男性の心理って?
前妻の物を捨てられない理由に加え、捨てるための手段はあるのかを専門家に聞いてみた!
-
excel vbaから実行するexe実行の黒い画面の非表示
Visual Basic(VBA)
-
VBAで外部プログラムを非表示で実行するには
Visual Basic(VBA)
-
WSH.Run の処理内容をテキストに落とすには
その他(プログラミング・Web制作)
-
-
4
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
5
VBS実行時にコマンドプロンプトが表示される
その他(プログラミング・Web制作)
-
6
コマンドプロンプト実行後に画面を閉じない方法
Visual Basic(VBA)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
VBA プロシージャの名前の取得
その他(Microsoft Office)
-
9
コマンドプロンプトを最小化してバッチを実行したい
その他(プログラミング・Web制作)
-
10
バッチでテキストファイルから任意の行のみ取得したい
その他(プログラミング・Web制作)
-
11
ExcelVBAでDOSコマンドの標準出力をリアルタイムでフォームへ出力するには
Visual Basic(VBA)
-
12
ExcelVBAでPDFを閉じるソース
その他(Microsoft Office)
-
13
【VBA】ファイルパスに半角スペースが入ると、VBAが動かない
Excel(エクセル)
-
14
ListViewで複数選択された項目を一度に削除する方法
Visual Basic(VBA)
-
15
WshShellから起動したbat(ftp)の応答メッセージを取得するには
Visual Basic(VBA)
-
16
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
17
ExcelVBAにてアプリをタスクマネージャーから強制終了させたいのですが
Visual Basic(VBA)
-
18
VBプログラムから「管理者として実行」したい
Visual Basic(VBA)
-
19
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
20
VBAで任意のウインドウのサイズを変更する方法
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
4Kの外部モニターに出力すると...
-
printfとputcharの違いは
-
MMDでavi出力が出来ない
-
OBS配信すると、マイクが途切れ...
-
c言語でグラフをつくる
-
センサーのタンパー出力について
-
cout と cerrの違い
-
VBAでIEを操作、ポップアップさ...
-
スマホのバッテリー消費につい...
-
プログラムについての質問です...
-
コンセントの電力は入力と出力...
-
VBA UTF-8形式のテキストファイ...
-
【UWSC】WEBページ中の特定文字...
-
標準出力の上書き
-
エクセルVBAでテキストファイル...
-
Zガンダムのハイザックて、ジェ...
-
中国の電子レンジの火力は何ワ...
-
無停電電源装置(UPS)の待機時...
-
VBAで特定範囲のセルの平均値を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
4Kの外部モニターに出力すると...
-
プログラムについての質問です...
-
printfとputcharの違いは
-
cout と cerrの違い
-
COBOLのMOVEで桁数が異なる場合
-
テキストファイルから特定の文...
-
MMDでavi出力が出来ない
-
コンセントの電力は入力と出力...
-
アクセスでエクセルに出力する...
-
OBS配信すると、マイクが途切れ...
-
coutで出力した文字を消去する...
-
CRC16計算について
-
VBA レジストリの値の読み方に...
-
ACCESS クエリ→フォーム...
-
printfの書式%.*s
-
VBAで有効数字の設定
-
VBAでテキスト出力時のスペース...
-
VBAのExecメソッドで画面を非表...
-
makeで文字化けする。migwのmak...
おすすめ情報
すいません、出力がおかしい理由がわかりました。
パス名にスペースが含まれる場合に""で囲んでなかったため
以前の内容が残っていたためです。
一応、所望することはできるようになったのですが
あと、
("\", "htmlfile")のところを設定の仕方を教えていただけますでしょうか?
それと標準出力ではなく、
標準入力、や、標準エラー出力、の出力の仕方も教えていただけますでしょうか?
よろしくお願いいたします。