
エクセル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も見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
他のアプリケーションの終了処理
Visual Basic(VBA)
-
VB6.0 SHELLで起動したプログラムを終了さしたいのですが
Visual Basic(VBA)
-
ExcelVBAにてアプリをタスクマネージャーから強制終了させたいのですが
Visual Basic(VBA)
-
-
4
VBAで既に開いている別アプリケーションのオブジェクトを得る
Visual Basic(VBA)
-
5
ExcelVBAでPDFを閉じるソース
その他(Microsoft Office)
-
6
外部プロセスを終了したい!!
Visual Basic(VBA)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
ExcelVBAでスペースキー操作したい
Excel(エクセル)
-
9
VBAで、なぜかSendkeyが効きません。
PowerPoint(パワーポイント)
-
10
Vba アプリケーションが立ち上がるまで待つ
Excel(エクセル)
-
11
VBA PDFファイル印刷後のAcrobatReaderDCの起動画面を閉じたい
Excel(エクセル)
-
12
VBAでの SendKeysの変数指定方法
Excel(エクセル)
-
13
VBAでOutlookを終了させたい ExcelVBAで既に起動されているOutlookを終了させる
Visual Basic(VBA)
-
14
【Excel VBA】マクロでExcel自体を終了させたい
Excel(エクセル)
-
15
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
16
VBAでこんなことできますか?
PowerPoint(パワーポイント)
-
17
Shell関数で起動したメディアプレーヤーを終了したい。
Visual Basic(VBA)
-
18
PDFファイルを開き、印刷し、閉じるマクロ
Visual Basic(VBA)
-
19
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
20
EXCEL VBAから他アプリケーションを操作することは可能ですか?
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vbaから他のアプリを終了
-
msgboxの表示位置
-
VB.netでFindWindowExやると・...
-
VBA 複数セルが空白なら印刷さ...
-
NVIDIAのシェーダーキャッシュ
-
エクセルで作った新しいウイン...
-
マインクラフト(pc版)で座標...
-
フォントの大きさ
-
ゲームでは結局どっちが良いの?
-
グラフの交点の求め方(Excel)
-
スピンボタンを右クリックして...
-
ドロップダウンリストのフォン...
-
Excelの上下を固定したい
-
WM_PAINTとWM_MOVEで同じ事をし...
-
Excel関数で指定範囲内に有るか...
-
リモートデスクトップの中のウ...
-
クリスタルレポートからPDFを作...
-
ダイアログでのDragDropでマウ...
-
エクセル - リストボックスのマ...
-
エクセルのコントロールツール...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vbaから他のアプリを終了
-
他のウィンドウのボタンを自動...
-
メッセージボックスの選択ボタ...
-
メッセージハンドラ
-
VBAでコントロールのハンドルを...
-
msgboxの表示位置
-
SetWindowText関数について
-
システム例外のメッセージを変...
-
VBA 複数セルが空白なら印刷さ...
-
SendMessage で ESC など
-
CloseHandle()
-
VBでRegisterWindowMessage関数...
-
チェックボックスのキーダウン...
-
VB.netでFindWindowExやると・...
-
windowsメールスロットについて...
-
Excel VBA で外部アプリケーシ...
-
点滅で知らせる方法
-
SetWindowsHookEx(グローバル...
-
デスクトップ上のアイコンの位...
-
マウスホイールをフックしたい
おすすめ情報