Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Dimensionare la schermata di Access

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Dimensionare la schermata di Access

Postdi KITT » 16/04/18 14:33

Buongiorno a tutti,
se inserisco il seguente codice nel vba di excel ottengo il resize e lo spostamento della schermata relativa al programma excel

Codice: Seleziona tutto
    Application.Width = 427.5
    Application.Height = 378
    Application.Left = 39.25
    Application.Top = 314.5


In access non riesco a trovare il modo per ottenere lo stesso risultato.
Ho cercato in rete ma ho trovato solo modi per dimensionare i form creati con access, ma a me serve poter operare direttamente sulla schermata del programma di access, o comunque renderla invisibile sullo schermo e visibile solo sulla barra degli strumenti.
Qualcuno puo' darmi uno spunto su cui possa lavorare in tal senso?
Ringrazio per l'interessamento e auguro una buona giornata
KITT
XP - OFFICE 2003 - ENG
WIN 7 - OFFICE 2010 - ENG
Avatar utente
KITT
Utente Junior
 
Post: 75
Iscritto il: 16/05/11 08:20

Sponsor
 

Re: Dimensionare la schermata di Access

Postdi KITT » 18/04/18 07:58

Ciao a tutti, provo a spiegare la mia esigenza finale, cosi' forse potete darmi spunti su come operare alternativamente.

Ho necessita' di avere una piccola form di access (in modalita' pop up) sempre in primo piano che possa spostare a piacere sullo schermo per permettermi di vedere quanto riportato sulle schermate sottostanti che possono essere schermate di explorer o altri programmi (NO ACCESS) da cui raccolgo dei dati che riporto sulla form.
Questa form non deve mai andare in secondo piano quando richiamo le varie schermate per raccogliere i dati.

Fin qui riesco ad ottenere quanto voluto, solo che quando questa form acquisisce il focus o l'activate (che presumo essere inevitabili quando ci scrivo sopra i dati), richiama tutta la schermata di access che correttamente resta in secondo piano anch'essa rispetto alla form, ma mi impedisce di leggere gli altri dati dalla schermata sottostante e quindi sono costretto a richiamarla ricliccandoci sopra.

Volevo quindi trovare un sistema che:
- mi permettesse di rimpicciolire al minimo la schermata di access e posizionarla in un punto a lato dello schermo che non dia fastidio;
-oppure un modo che non la facesse comparire mai (ovviamente almeno fino a quando non uso piu' la form)

Avete suggerimenti su alternative per ottenere lo stesso risultato o similare?
Ringrazio per l'interessamento ed auguro una buona giornata :)
KITT
XP - OFFICE 2003 - ENG
WIN 7 - OFFICE 2010 - ENG
Avatar utente
KITT
Utente Junior
 
Post: 75
Iscritto il: 16/05/11 08:20

Re: Dimensionare la schermata di Access

Postdi alfrimpa » 18/04/18 10:50

Ciao Kitt

Se ho capito bene prova a dare uno sguardo a questo link

https://stackoverflow.com/questions/390 ... thing-else

o comunque cercare con Google: "Access hide application and show form"
Alfredo

Win7 + Office 2007
Avatar utente
alfrimpa
Utente Senior
 
Post: 1161
Iscritto il: 30/12/13 17:01
Località: Napoli

Re: Dimensionare la schermata di Access

Postdi Anthony47 » 18/04/18 12:15

Non perdere il messaggio di Alfredo, sopra.
Non conosco Access, in excel la cosa si potrebbe fare con questa sequenza:
-all'attivazione della userform si ridimensiona la finestra Excel
Codice: Seleziona tutto
Private Sub UserForm_Activate()
With Application
    .WindowState = xlMaximized
    cwh = .UsableHeight
    cww = .UsableWidth
    .WindowState = xlNormal
    .Top = cwh
    .Left = cww - 210
    .Height = 100
    .Width = 200
End With
End Sub


Alla chiusura della form si massimizza Excel:
Codice: Seleziona tutto
Private Sub UserForm_Terminate()
Application.WindowState = xlMaximized
End Sub


Immagino che Access consenta una gestione analoga.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 15991
Iscritto il: 21/03/06 16:03
Località: Ivrea

Postdi archimede » 18/04/18 15:17

Ci sono diversi modi per farlo, credo.

Ere geologiche fa avevo fatto qualcosa di analogo, ma ovviamente non ricordo più nulla e comunque con ogni probabilità non sarebbe più una soluzione attuale.

L'unico consiglio che ti posso dare è di fare le prove su una COPIA del db: in alcuni casi potresti trovarti nella poco piacevole situazione di non riuscire più ad aprire la finestra del db (e, quindi, a fare qualsiasi modifica).

Alessandro
archimede
Moderatore
 
Post: 2810
Iscritto il: 07/11/02 12:41
Località: Genova

Re: Dimensionare la schermata di Access

Postdi KITT » 20/04/18 06:24

Buongiorno a tutti, grazie per il vostro interessamento e gli spunti che mi avete dato, provo a lavorarci su nel dettaglio in questi giorni e vi faro' sapere.

Grazie ancora e buona giornata :)
KITT
XP - OFFICE 2003 - ENG
WIN 7 - OFFICE 2010 - ENG
Avatar utente
KITT
Utente Junior
 
Post: 75
Iscritto il: 16/05/11 08:20

Re: Dimensionare la schermata di Access

Postdi KITT » 06/06/18 06:14

Buongiorno a tutti e grazie per i vostri spunti, siete sempre una garanzia!!!

Ho risolto in questo modo:

1) - Nel modulo inserisco la seguente dichiarazione:

Codice: Seleziona tutto
Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long


2) - di seguito il codice che ho inserito nella user form :

Codice: Seleziona tutto
Option Compare Database
Option Explicit
 
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
 
Private Const HWND_TOPMOST = -1
Private Const HWND_NOTOPMOST = -2
Private Const SWP_NOSIZE = 1
Private Const SWP_NOMOVE = 2
 
Private Const lngNoChangePos = SWP_NOMOVE + SWP_NOSIZE


3) - Nella user form predispongo una check box con la quale ne gestisco la messa in primo piano contestualmente alla scomparsa della window di access.il seguente codice l'ho inserito tra le istruzioni che governano il click della checkbox:

Codice: Seleziona tutto
Private Sub CheckBox1_Click()
 
Dim lWin As Long
 
     If CheckBox1.Value = True Then
        Call SetWindowPos(Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, lngNoChangePos)
        lWin = apiShowWindow(Application.hWndAccessApp, 0)
            Else
                Call SetWindowPos(Me.hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, lngNoChangePos)
                lWin = apiShowWindow(Application.hWndAccessApp, 1)
      End If
   
End Sub


Spero possa essere utile.

Buona giornata a tutti
KITT
XP - OFFICE 2003 - ENG
WIN 7 - OFFICE 2010 - ENG
Avatar utente
KITT
Utente Junior
 
Post: 75
Iscritto il: 16/05/11 08:20


Torna a Applicazioni Office Windows


Topic correlati a "Dimensionare la schermata di Access":


Chi c’è in linea

Visitano il forum: Nessuno e 34 ospiti