Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9260 / 76738 ←次へ | 前へ→

【73041】Re:起動したアプリケーションが処理終了するまで次のステップに進まずに待つ
発言  H. C. Shinopy  - 12/10/30(火) 20:32 -

引用なし
パスワード
   ちょっと割り込みで失礼。

Run メソッドのページ
msdn.microsoft.com/ja-jp/library/cc364421.aspx
を見ると:

次の VBScript コードも上記と同じ処理を実行する例ですが、ウィンドウの種類を指定し、ユーザーがメモ帳を終了するまで待機し、終了時にメモ帳から返されるエラー コードを保存する点が異なります。
Set WshShell = WScript.CreateObject("WScript.Shell")
Return = WshShell.Run("notepad " & WScript.ScriptFullName, 1, true)
―とあります。

これをVBAに置き換えると、
例えばデスクトップの「Test.txt」をノートパッドで開き、
閉じた後でエラーコードを表示する場合:

Sub MyTestTxt()
 Dim myWshShell As Object
 Dim myReturn As Long
 '
 Set myWshShell = CreateObject("WScript.Shell")
 myReturn = myWshShell.Run("notepad " & myWshShell.SpecialFolders("Desktop") & "\Test.txt", 1, True)
 '
 MsgBox myReturn
End Sub ' MyTestTxt *----*----*  *----*----*  *----*----*  *----*----*

但し、引数intWindowStyleを「0(ウィンドウを非表示にし、別のウィンドウをアクティブにします。)」にすると、続きの処理ができず、Excelを強制終了せざるを得ませんでした。
御質問の内容からして、1や7を指定するべきでしょうか?

0 hits

【73033】起動したアプリケーションが処理終了するまで次のステップに進まずに待つ かな 12/10/26(金) 9:24 質問
【73036】Re:起動したアプリケーションが処理終了す... ichinose 12/10/28(日) 9:30 発言
【73037】Re:起動したアプリケーションが処理終了す... かな 12/10/29(月) 14:10 質問
【73039】Re:起動したアプリケーションが処理終了す... ichinose 12/10/29(月) 18:21 発言
【73041】Re:起動したアプリケーションが処理終了す... H. C. Shinopy 12/10/30(火) 20:32 発言
【73092】Re:起動したアプリケーションが処理終了す... かな 12/11/8(木) 22:05 発言
【73091】Re:起動したアプリケーションが処理終了す... かな 12/11/8(木) 21:59 発言

9260 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free