Не.... Вот скриншоты (у мну так работает, если использовать код, выложенный мной выше)
Это при несвернутой форме
А это при свернутой -
И все бы хорошо, но ерундовина возле пуска портит всю картину((
В приведенном коде после его копирования удалите зачеркнутое + WS_VISIBLE. Может не удалили просто
Добавлено: вроде нашел решение (форма нормально сворачивается в панель задач и рядом с пуском ничего нет)
Код: ----код модуля----
Option Explicit
Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" _
(ByVal hwnd As Long, ByVal nIndex As Long, ByVal WindowStyles As Long) As Long
Private Declare Function ShowWindow Lib "user32.dll" (ByVal hwnd As _
Long, ByVal nCmdShow As Long) As Long
Enum WindowStyles
WS_OVERLAPPED = &H0
WS_POPUP = &H80000000
WS_CHILD = &H40000000
WS_MINIMIZE = &H20000000
WS_VISIBLE = &H10000000
WS_DISABLED = &H8000000
WS_CLIPSIBLINGS = &H4000000
WS_CLIPCHILDREN = &H2000000
WS_MAXIMIZE = &H1000000
WS_BORDER = &H800000
WS_DLGFRAME = &H400000
WS_VSCROLL = &H200000
WS_HSCROLL = &H100000
WS_SYSMENU = &H80000
WS_THICKFRAME = &H40000
WS_GROUP = &H20000
WS_TABSTOP = &H10000
WS_MINIMIZEBOX = &H20000
WS_MAXIMIZEBOX = &H10000
WS_CAPTION = WS_BORDER Or WS_DLGFRAME
WS_TILED = WS_OVERLAPPED
WS_ICONIC = WS_MINIMIZE
WS_SIZEBOX = WS_THICKFRAME
WS_OVERLAPPEDWINDOW = WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_THICKFRAME Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX
WS_TILEDWINDOW = WS_OVERLAPPEDWINDOW
WS_POPUPWINDOW = WS_POPUP Or WS_BORDER Or WS_SYSMENU
WS_CHILDWINDOW = WS_CHILD
End Enum
Public Sub ssub()
Dim hForm As Long
hForm = FindWindow("ThunderDFrame", UserForm1.Caption)
DoEvents
SetWindowLong hForm, -16, WS_CAPTION + WS_SYSMENU + WS_MINIMIZEBOX
DoEvents
ShowWindow hForm, 1
DoEvents
End Sub
Sub qwe()
Application.Visible = False
Call UserForm1.UserForm_Initialize
End Sub
----код формы ----
Option Explicit
Private Sub UserForm_Activate()
MsgBox "UserForm_Activate"
End Sub
Public Sub UserForm_Initialize()
Call ssub
End Sub