Hallo Markus,
Wenn du den Dateiexplorer wieder schließen willst, dann geht das so:
Füge ganz oben im Modul noch vor der ersten Sub-Zeile diesen Code ein:
Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" ( _
ByVal lpClassName As String, ByVal lpWindowName As String) As LongPtr
Private Declare PtrSafe Function SendMessage Lib "user32.dll" Alias _
"SendMessageA" (ByVal hwnd As LongPtr, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long
Const WM_CLOSE = &H10
Anschließend ergänzt du deinen Code um diese zwei Zeilen:
Explorer = FindWindow("CabinetWClass", vbNullString)
SendMessage Explorer, WM_CLOSE, ByVal 0&, ByVal 0&
Damit wird das zuerst gefundene Explorer geschlossen. Falls du mehrere Explorer-Fenster geöffnet hast und alle schließen willst, ließe sich das mit einer Schleife erledigen. Die bekommst du aber sicher selbst hin.
Gruß Mr. K.
|