
エクセルVBAから他のアプリを終了するマクロを書きたいのですが、途中で行き詰ってます。
Sub test()
Dim h As Long
h = FindWindow(vbNullString, "タイトル")
Call SendMessage(h, 0, 0, "ALT+{F4}")
End Sub
FindWindowでハンドルを取得してALT+F4を送ればいいじゃないかと思ってますが
ALT+F4の送り方がわかりません。どなたか教えてください。
また、ほかに良い方法があれば併せてご提案くださると幸甚です。
よろしくお願いします。
--
エクセル2003
No.1ベストアンサー
- 回答日時:
そこまでできているのなら下記のように変更して見て下さい。
VB6.0 用のコードをそのまま転記していますがご理解頂けるかと。
Private Sub hwndAcquire()
'ハンドル取得及び終了処理のサブプロシージャ
Dim hwnd As Long
Dim ret As Long
If Len(strClassName) Then
'クラス名を与えてハンドルを取得
'起動中ならハンドルが返り、起動していなければ 0 が返る
hwnd = FindWindow(strClassName, vbNullString)
ElseIf Len(strCaptionName) Then
'キャプション名を与えてハンドルを取得する場合
'strCaptionName = "Microsoft Excel - Book1" '電卓の場合 "電卓"
hwnd = FindWindow(vbNullString, strCaptionName)
End If
'指定のハンドルに終了のメッセージを送る
ret = SendMessage(hwnd, WM_CLOSE, 0&, 0&)
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
みんなに挑戦してほしい「色彩検定」
これまで多くの方々が受検したが「色彩検定」。その目的や活用法は人それぞれ。今回は、色彩検定に影響を受けた男女3名にインタビュー。
-
他のアプリケーションの終了処理
Visual Basic(VBA)
-
VB6.0 SHELLで起動したプログラムを終了さしたいのですが
Visual Basic(VBA)
-
VBAで既に開いている別アプリケーションのオブジェクトを得る
Visual Basic(VBA)
-
4
ExcelVBAにてアプリをタスクマネージャーから強制終了させたいのですが
Visual Basic(VBA)
-
5
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
6
外部プロセスを終了したい!!
Visual Basic(VBA)
-
7
ExcelVBAでPDFを閉じるソース
その他(Microsoft Office)
-
8
VBAでこんなことできますか?
PowerPoint(パワーポイント)
-
9
【Excel VBA】マクロでExcel自体を終了させたい
Excel(エクセル)
-
10
AppActivateの使い方
PowerPoint(パワーポイント)
-
11
VBAでの SendKeysの変数指定方法
Excel(エクセル)
-
12
EXCEL VBAから他アプリケーションを操作することは可能ですか?
Visual Basic(VBA)
-
13
VBAで、なぜかSendkeyが効きません。
PowerPoint(パワーポイント)
-
14
VBAにてメッセージボックスを最前面に表示させる
その他(プログラミング・Web制作)
-
15
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
16
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
17
VBAで任意のウインドウのサイズを変更する方法
Visual Basic(VBA)
-
18
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
19
VBAでエクセル内の情報を他のアプリケーションへ自動入力したいです
Visual Basic(VBA)
-
20
Adobe Reader を閉じる
その他(Microsoft Office)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
メッセージボックスの選択ボタ...
-
5
SetWindowText関数について
-
6
他のウィンドウのボタンを自動...
-
7
msgboxの表示位置
-
8
マウスの右クリック+Shiftキー...
-
9
DEVICECHANGE() の受け取り
-
10
VBでRegisterWindowMessage関数...
-
11
SendMessage で ESC など
-
12
キーボード入力をHSPでさせたい...
-
13
WM_NCLBUTTONUPについて
-
14
VBA 複数セルが空白なら印刷さ...
-
15
エクセルで作った新しいウイン...
-
16
「アイテムは収集されました」...
-
17
検索の画面がでなくなってしま...
-
18
ドロップダウンリストのフォン...
-
19
エクセルのコントロールツール...
-
20
コントロールの書式設定で、“コ...
おすすめ情報
公式facebook
公式twitter