ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Close Window (https://www.excelbanter.com/excel-programming/292017-close-window.html)

mark

Close Window
 
Is it possible to close a programme window, after opening it with the shell
command in VBA?.



Chip Pearson

Close Window
 
Mark,

It depends on the program. One method that may work is to send a
CLOSE message to the window.


Public Declare Function SendMessage Lib "user32" Alias
"SendMessageA" _
(ByVal HWND As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long

Public Declare Function FindWindow Lib "user32" Alias
"FindWindowA" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long

Sub CloseProgram()
Dim HWND As Long
Const WM_CLOSE = &H10

HWND = FindWindow(vbNullString, "Calculator") '<<<<
If HWND 0 Then
SendMessage HWND, WM_CLOSE, 0&, 0&
End If
End Sub

Change the "Calculator" in the line marked with <<< to the
caption of the program window you want to close.



"mark" wrote in message
news:SZoZb.135$Td6.11@newsfe1-win...
Is it possible to close a programme window, after opening it

with the shell
command in VBA?.





mark

Close Window
 
Thank you for your help with the code, runs fine and executes the line
"SendMessage HWND, WM_CLOSE, 0&, 0&"
but the windows doesn't close. The window I am trying to close is a web page

"Chip Pearson" wrote in message
...
Mark,

It depends on the program. One method that may work is to send a
CLOSE message to the window.


Public Declare Function SendMessage Lib "user32" Alias
"SendMessageA" _
(ByVal HWND As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long

Public Declare Function FindWindow Lib "user32" Alias
"FindWindowA" _
(ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long

Sub CloseProgram()
Dim HWND As Long
Const WM_CLOSE = &H10

HWND = FindWindow(vbNullString, "Calculator") '<<<<
If HWND 0 Then
SendMessage HWND, WM_CLOSE, 0&, 0&
End If
End Sub

Change the "Calculator" in the line marked with <<< to the
caption of the program window you want to close.



"mark" wrote in message
news:SZoZb.135$Td6.11@newsfe1-win...
Is it possible to close a programme window, after opening it

with the shell
command in VBA?.








All times are GMT +1. The time now is 01:53 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com