@odeddvir זה לא אני כתבתי, זה קוד שקיים אצלי כבר כמה שנים ואני לא זוכר מה מקורו ייתכן שמכאן, אני רק ערכתי בו כמה שיפוצים קטנים ותיקוני באגים שצצו מדי פעם. עכ"פ זה המודול:
Option Compare Database
Option Explicit
'הסתרת המסך הראשי של האקסס
'גילוי מסך ראשי
'Call ShowWindow(hWndAccessApp, SW_NORMAL)
' הסתרה של מסך ראשי
'Call ShowWindow(hWndAccessApp, SW_HIDE)
Global Const SW_HIDE = 0
Global Const SW_SHOWNORMAL = 1
Global Const SW_SHOWMINIMIZED = 2
Global Const SW_SHOWMAXIMIZED = 3
Global Const SW_NORMAL = 4
Global Const SW_MINIMIZE = 5
Global Const SW_MAXIMIZE = 6
Global Const ERROR_SUCCESS = 7
#If VBA7 Then
Private Declare PtrSafe Function apiShowWindow Lib "user32" _
Alias "ShowWindow" (ByVal hWnd As Long, _
ByVal nCmdShow As Long) As Long
#Else
Private Declare Function apiShowWindow Lib "user32" _
Alias "ShowWindow" (ByVal hWnd As Long, _
ByVal nCmdShow As Long) As Long
#End If
Function fSetAccessWindow(nCmdShow As Long)
Dim loX As Long
Dim loForm As Form
Dim loReport As Report
On Error Resume Next
Set loForm = Screen.ActiveForm
Set loReport = Screen.ActiveReport
If Err <> 0 Then
loX = apiShowWindow(hWndAccessApp, nCmdShow)
Err.Clear
End If
If nCmdShow = SW_SHOWMINIMIZED And loForm.Modal = True Then
MsgBox "Cannot minimize Access with " _
& (loForm.Caption + " ") _
& "form on screen"
MsgBox "התוכנה מוזערה לשורת המשימות" _
& (loForm.Caption + " ") _
& "", vbInformation + vbMsgBoxRight + vbMsgBoxRtlReading, "הודעת מנהל מערכת"
ElseIf nCmdShow = SW_HIDE And loForm.PopUp <> True Then
MsgBox "Cannot hide Access with " _
& (loForm.Caption + " ") _
& "form on screen"
Else
loX = apiShowWindow(hWndAccessApp, nCmdShow)
End If
fSetAccessWindow = (loX <> 0)
End Function
וזה המימוש:
Call fSetAccessWindow(0)