ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Closing folder (https://www.excelbanter.com/excel-discussion-misc-queries/224293-closing-folder.html)

danpt

Closing folder
 
sub openfolder()
' I use this to open folder(ABC)
Shell "explorer.exe " & Chr(34) & Environ("userprofile") & "\Desktop\ABC",
vbNormalFocus
end sub

Can vba close the folder(ABC)
also, can vba close a data.mht window
Thanks

Sheeloo[_4_]

Closing folder
 
Found the following code at http://www.andreavb.com/forum/viewtopic_5604.html

Replace Text1.text by ABC and run Sub cmdClose_Click()

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

Declare Function PostMessage Lib "user32" Alias _
"PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long

Public Const WM_CLOSE = &H10

Private Sub cmdClose_Click()

Dim winHwnd As Long
Dim RetVal As Long

winHwnd = FindWindow(vbNullString, Text1.Text)

Debug.Print winHwnd

If winHwnd < 0 Then
RetVal = PostMessage(winHwnd, WM_CLOSE, 0&, 0&)
If RetVal = 0 Then
MsgBox "Error posting message."
End If
Else
MsgBox Text1.Text + " is not open."
End If

End Sub



"danpt" wrote:

sub openfolder()
' I use this to open folder(ABC)
Shell "explorer.exe " & Chr(34) & Environ("userprofile") & "\Desktop\ABC",
vbNormalFocus
end sub

Can vba close the folder(ABC)
also, can vba close a data.mht window
Thanks


danpt

Closing folder
 
Thank you very much, I learn something new.


"Sheeloo" wrote:

Found the following code at http://www.andreavb.com/forum/viewtopic_5604.html

Replace Text1.text by ABC and run Sub cmdClose_Click()

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

Declare Function PostMessage Lib "user32" Alias _
"PostMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long

Public Const WM_CLOSE = &H10

Private Sub cmdClose_Click()

Dim winHwnd As Long
Dim RetVal As Long

winHwnd = FindWindow(vbNullString, Text1.Text)

Debug.Print winHwnd

If winHwnd < 0 Then
RetVal = PostMessage(winHwnd, WM_CLOSE, 0&, 0&)
If RetVal = 0 Then
MsgBox "Error posting message."
End If
Else
MsgBox Text1.Text + " is not open."
End If

End Sub



"danpt" wrote:

sub openfolder()
' I use this to open folder(ABC)
Shell "explorer.exe " & Chr(34) & Environ("userprofile") & "\Desktop\ABC",
vbNormalFocus
end sub

Can vba close the folder(ABC)
also, can vba close a data.mht window
Thanks



All times are GMT +1. The time now is 04:39 AM.

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