
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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
excel vbaから実行するexe実行の黒い画面の非表示
Visual Basic(VBA)
-
VBAで外部プログラムを非表示で実行するには
Visual Basic(VBA)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
-
4
コマンドプロンプト実行後に画面を閉じない方法
Visual Basic(VBA)
-
5
WSH.Run の処理内容をテキストに落とすには
その他(プログラミング・Web制作)
-
6
コマンドプロンプトを最小化してバッチを実行したい
その他(プログラミング・Web制作)
-
7
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
8
Excel VBA コマンドライン(MS-DOS)でウィンドウを閉じずに最終行(文字)まで取得する
Visual Basic(VBA)
-
9
VBScriptでコマンドプロンプトウィンドウを開いたままにしたいです
その他(プログラミング・Web制作)
-
10
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
11
VBS実行時にコマンドプロンプトが表示される
その他(プログラミング・Web制作)
-
12
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
13
ExcelVBAでDOSコマンドの標準出力をリアルタイムでフォームへ出力するには
Visual Basic(VBA)
-
14
メッセージボックスで1025文字以上を扱う
Visual Basic(VBA)
-
15
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
16
バッチファイル 特定ウインドウの最小化
AJAX
-
17
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
18
vba クリップボードクリアについて教えてください
その他(プログラミング・Web制作)
-
19
VBAでパワーシェルを実行したいのですが、なかなかうまく出来ず、有識者の知識をお借りさせてください。
その他(プログラミング・Web制作)
-
20
Excelの条件付き書式設定の太い罫線
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
Microsoft365で作ったword文書...
-
4Kの外部モニターに出力すると...
-
ドラッグ&ドロップについて
-
Accessのテーブルからcsv出力す...
-
Windows Formアプリからコンソ...
-
ListViewの複数選択について
-
cout と cerrの違い
-
プログラムについての質問です...
-
VBでステッピングモーターを動...
-
coutで出力した文字を消去する...
-
ACCESS クエリ→フォーム...
-
IISログの出力タイミングについて
-
printfですぐに出力
-
スマホ充電器購入にあたり
-
VBAで有効数字の設定
-
【VBA】PDFを2in1で出力したいです
-
コンセントの電力は入力と出力...
-
FLEXSOLARパネルからAmazonで買...
-
KEYENCEのシーケンスプログラム...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
4Kの外部モニターに出力すると...
-
プログラムについての質問です...
-
Accessのテーブルからcsv出力す...
-
FLEXSOLARパネルからAmazonで買...
-
真空管 300 B の前段について
-
cout と cerrの違い
-
printfとputcharの違いは
-
スマホ充電器購入にあたり
-
PD充電器について
-
TV出力ポートをOFFにすれば良い...
-
COBOLのMOVEで桁数が異なる場合
-
Windows Formアプリからコンソ...
-
CrystalReportの文字列の折返し...
-
C#でアクセス権限の取得方法が...
-
coutで出力した文字を消去する...
-
【UWSC】WEBページ中の特定文字...
-
KEYENCEのシーケンスプログラム...
-
CRC16計算について
-
標準出力の上書き
おすすめ情報
すいません、出力がおかしい理由がわかりました。
パス名にスペースが含まれる場合に""で囲んでなかったため
以前の内容が残っていたためです。
一応、所望することはできるようになったのですが
あと、
("\", "htmlfile")のところを設定の仕方を教えていただけますでしょうか?
それと標準出力ではなく、
標準入力、や、標準エラー出力、の出力の仕方も教えていただけますでしょうか?
よろしくお願いいたします。