Maximize in apertura database tramite codice VBA

Anonimo
2018-03-17T23:39:26+00:00

Ciao,

sto uscendo matto.

Non riesco a trovare la soluzione a questo problema.

A database aperto e a prescindere dalle dimensioni di qualsiasi oggetto in esso aperto, facendo clic sul pulsante centrale in alto a destra della barra multifunzione potrei visualizzare il database in modalità "Ripristino", cioè dimensionato:

oppure in modalità "Ingrandito":

Il problema è che chiudendo il database in modalità di ripristino succede che quando vado a riaprirlo, oppure ad aprire un qualsiasi altro database, anche dopo aver chiuso e riaperto il computer, rimane in modalità ripristino.

C'è qualche possibilità, magari tramite codice VBA, di scegliere la propria dimensione in apertura?

Vladimiro

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2018-03-18T09:15:25+00:00

ciao Vladimiro,

recuperi l'handle dell'applicazione ms-access e lo passi alla APi ShowWindow applicando la costante corretta che trovi qui :

https://msdn.microsoft.com/en-us/library/windows/desktop/ms633548%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396

funzione da lanciare con macro autoexec oppure su apertura del db nella form che impostata su aperture del DB.

( sempre se ho capito...! :-) ).

Option Compare Database

Option Explicit

#If Win64 Then

Private Declare PtrSafe Function ShowWindow _

Lib "user32" (ByVal hwnd As LongPtr, _

ByVal nCmdShow As Long) As Long

#Else

private Declare Function ShowWindow _

Lib "user32" Alias "ShowWindow" _

(ByVal hwnd As Long, _

ByVal nCmdShow As Long) As Long

#End If

Private Const SW_HIDE As Long = 0

Private Const SW_MAXIMIZE As Long = 3

Private Const SW_MINIMIZE As Long = 6

Private Const SW_RESTORE As Long = 9

Private Const SW_SHOW As Long = 5

Private Const SW_SHOWDEFAULT As Long = 10

Private Const SW_SHOWMAXIMIZED As Long = 3

Private Const SW_SHOWMINIMIZED As Long = 2

Public Function setAppSize()

ShowWindow hwnd:=Application.hWndAccessApp, nCmdShow:=SW_MAXIMIZE

'ShowWindow hwnd:=Application.hWndAccessApp, nCmdShow:=SW_RESTORE

End Function

ciao, Sandro.

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

1 risposta aggiuntiva

Ordina per: Più utili
  1. Anonimo
    2018-03-18T10:14:54+00:00

    ciao Vladimiro,

    recuperi l'handle dell'applicazione ms-access e lo passi alla APi ShowWindow applicando la costante corretta che trovi qui :

    https://msdn.microsoft.com/en-us/library/windows/desktop/ms633548%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396

    funzione da lanciare con macro autoexec oppure su apertura del db nella form che impostata su aperture del DB.

    ( sempre se ho capito...! :-) ).

    Option Compare Database

    Option Explicit

    #If Win64 Then

        Private Declare PtrSafe Function ShowWindow _

                 Lib "user32" (ByVal hwnd As LongPtr, _

                               ByVal nCmdShow As Long) As Long

    #Else

        private Declare Function ShowWindow _

                Lib "user32" Alias "ShowWindow" _

                              (ByVal hwnd As Long, _

                               ByVal nCmdShow As Long) As Long

    #End If

    Private Const SW_HIDE As Long = 0

    Private Const SW_MAXIMIZE As Long = 3

    Private Const SW_MINIMIZE As Long = 6

    Private Const SW_RESTORE As Long = 9

    Private Const SW_SHOW As Long = 5

    Private Const SW_SHOWDEFAULT As Long = 10

    Private Const SW_SHOWMAXIMIZED As Long = 3

    Private Const SW_SHOWMINIMIZED As Long = 2

    Public Function setAppSize()

    ShowWindow hwnd:=Application.hWndAccessApp, nCmdShow:=SW_MAXIMIZE

    'ShowWindow hwnd:=Application.hWndAccessApp, nCmdShow:=SW_RESTORE

    End Function

    ciao, Sandro.

    Ciao Sandro,

    grandeeeeeeeeee!!!!!!!!!!!!!!!

    Adesso posso completare l'altro thread riguardante il backup a database chiuso; dovesse mai servire a qualcuno!

    Vladimiro

    La risposta è stata utile?

    0 commenti Nessun commento