|
>「VBA」というフォルダーを最小化、戻しは可能でしょうか。
APIになりますが、以下のように簡単です。
が、なぜフォルダーの最小化、戻しをマクロでやる必要があるのでしょうか?
そのへんを説明されると、根本的にもっと良い方法を示してもらえるかもしれません。
'標準モジュール
Option Explicit
Private Declare Function ShowWindow Lib "user32" _
(ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function IsIconic Lib "user32" (ByVal hwnd As Long) As Long
Const SW_SHOWMINIMIZED = 2
Const SW_RESTORE = 9
'フォルダーを最小化/元に戻す
Sub test_FolderMinizedRestore()
Dim hwnd&, folder$
folder = "VBA" 'vbNullString 'ファルダー名
hwnd = FindWindow("CabinetWClass", folder)
If hwnd = 0 Then hwnd = FindWindow("ExploreWClass", folder)
If hwnd Then
ShowWindow hwnd, IIf(IsIconic(hwnd), SW_RESTORE, SW_SHOWMINIMIZED)
Else 'Debug用
MsgBox "フォルダー'" & folder & "'は開いていない"
End If
End Sub
|
|