Ms-Access

VBA 最大化訪問應用程序主視窗

  • September 10, 2016

我需要我的訪問應用程序視窗全屏打開。我試過使用:

DoCmd.RunCommand acCmdAppMaximize

DoCmd.Maximize (which I think only maximizes a Form).

也不為我工作?我將 VBA 程式碼放入其中,OnLoad event並嘗試將其放入命令按鈕的點擊事件中。

我想我需要先將焦點設置到實際的訪問應用程序(主視窗),然後執行DoCmd.RunCommand acCmdAppMaximize命令,但不知道如何實現這一點。

我注意到,如果我點擊命令按鈕而DoCmd.RunCommand acCmdAppMaximize沒有任何反應,但如果首先我移動視窗(通過拖動它的標題欄)然後點擊該按鈕,它實際上會最大化視窗。

以前有人有運氣嗎?

更新:

不知道為什麼,但我能得到的唯一方法

DoCmd.RunCommand acCmdAppMaximize

工作,首先呼叫

DoCmd.RunCommand acCmdAppMinimize (minimize window first)

然後呼叫DoCmd.RunCommand acCmdAppMaximize(然後最大化)

我也花了一段時間來解決這個問題,閱讀各種部落格和文章。我找到了一種非常簡單的方法,只需使用一行程式碼即可在 VBA 中實現所需的結果。在 VBA 編輯器中,將此程式碼放在 On Load 程式碼之後:

$$ Your On Load code $$ 鍵碼 = 16

這段程式碼實現了相當於按 F11,即最大化目前打開的視窗的視圖。

我提出了這個新的解決方案,在我的應用程序中完美執行:

Dim StrDbAccessPath As String, appAccess As New Access.Application

StrDbAccessPath = "C:\access.mdb" '--> path of access

appAccess.Visible = True
appAccess.RunCommand acCmdAppMaximize
appAccess.OpenCurrentDatabase StrDbAccessPath, False

我為 excel 應用程序打開此訪問權限。我對第一條評論的主要更改是:

appAccess.RunCommand acCmdAppMaximize

不是

DoCmd.RunCommand acCmdAppMaximize

引用自:https://dba.stackexchange.com/questions/57653