Come mantenere la finestra di Excel sempre in primo piano?
Ti sei mai trovato in difficoltà quando la finestra di Excel continua a nascondersi dietro altre applicazioni mentre esegui multitasking? Molti utenti desiderano che la finestra della cartella di lavoro Excel rimanga in primo piano, in modo da poter fare riferimento o inserire dati in Excel mentre lavorano con altri programmi, come quando trasferiscono manualmente numeri da un browser o da un'altra app desktop. Questa funzionalità è particolarmente utile per gli utenti che lavorano con monitor duali, fanno presentazioni o passano frequentemente da Excel ad altri software.
Sfortunatamente, Microsoft Excel non offre nativamente un'impostazione o opzione integrata che permetta di mantenere la finestra di Excel sempre in primo piano rispetto alle altre finestre. Non è possibile fissare direttamente Excel sopra tutte le altre finestre aperte tramite la sua interfaccia standard, indipendentemente dalla versione o dal fatto che si utilizzi Office a 32 bit o 64 bit. Tuttavia, esiste una soluzione alternativa per ottenere questa funzionalità. Di seguito, troverai un metodo basato su codice VBA adatto a una vasta gamma di scenari d'uso.
Mantieni la finestra di Excel sempre in primo piano con il codice VBA
Mantieni la finestra di Excel sempre in primo piano con il codice VBA
Questa soluzione basata su codice VBA ti consente di mantenere la finestra attiva di Excel fissata sopra tutte le altre finestre, garantendo che sia sempre visibile e non venga sovrapposta dalle finestre di altre applicazioni. Che tu stia utilizzando una versione a 32 bit o 64 bit di Office, lo script VBA fornito qui sotto funziona per entrambe le versioni. Questo approccio è particolarmente adatto per utenti avanzati di Excel o per quelli che operano in ambienti in cui non è consentita l'installazione di software aggiuntivo.
Prima di procedere, salva il tuo lavoro, poiché errori imprevisti o riavvii di Excel possono occasionalmente verificarsi durante l'esecuzione di macro. Inoltre, tieni presente che questa soluzione influisce solo sulla finestra di Excel in cui esegui la macro; altre istanze non rimarranno automaticamente in primo piano.
1. Tieni premuti i tasti ALT + F11 sulla tastiera per avviare la finestra dell'editor Microsoft Visual Basic for Applications. Questo è l'ambiente in cui puoi inserire e gestire il codice VBA per le tue cartelle di lavoro Excel.
2. Nell'editor VBA, clicca su Inserisci > Modulo per aggiungere un nuovo modulo alla tua cartella di lavoro. Quindi, copia e incolla il seguente codice VBA nella finestra Modulo aperta:
Codice VBA: Mantieni la finestra di Excel sempre in primo piano
'Update 20140909
#If Win64 Then
Public Declare PtrSafe Function SetWindowPos _
Lib "user32" ( _
ByVal hwnd As LongPtr, _
ByVal hwndInsertAfter As LongPtr, _
ByVal x As Long, ByVal y As Long, _
ByVal cx As Long, ByVal cy As Long, _
ByVal wFlags As Long) _
As Long
#Else
Public 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
#End If
Public Const SWP_NOSIZE = &H1
Public Const SWP_NOMOVE = &H2
Public Const HWND_TOPMOST = -1
Public Const HWND_NOTOPMOST = -2
Sub ShowXLOnTop(ByVal OnTop As Boolean)
Dim xStype As Long
#If Win64 Then
Dim xHwnd As LongPtr
#Else
Dim xHwnd As Long
#End If
If OnTop Then
xStype = HWND_TOPMOST
Else
xStype = HWND_NOTOPMOST
End If
Call SetWindowPos(Application.hwnd, xStype, 0, 0, 0, 0, SWP_NOSIZE Or SWP_NOMOVE)
End Sub
Sub SetXLOnTop()
ShowXLOnTop True
End Sub
Sub SetXLNormal()
ShowXLOnTop False
End Sub
Questo codice utilizza chiamate API a livello di sistema per controllare lo stato di fissaggio della finestra. Assicurati che le macro siano abilitate nelle impostazioni di Excel affinché il codice VBA funzioni correttamente. Se ricevi un messaggio "Le macro sono disabilitate", potrebbe essere necessario aggiornare le impostazioni del Centro di protezione di Excel per consentire l'esecuzione delle macro.
3. Dopo aver inserito il codice, premi F5 o clicca sul pulsante Esegui nell'editor VBA. Apparirà una finestra di dialogo Macro che elenca le macro disponibili. Seleziona la macro denominata SetXLOnTop e poi clicca su Esegui per eseguirla. Questo applicherà lo stato "sempre in primo piano" alla tua finestra di Excel corrente. Vedi l'illustrazione qui sotto:
4. Una volta che la macro ha finito di essere eseguita, la tua finestra di Excel dovrebbe rimanere visibile sopra tutte le altre applicazioni aperte, rendendo molto più facile fare riferimento o inserire dati tra più programmi senza che la finestra di Excel venga nascosta.
Questa impostazione persiste fino a quando non la ripristini manualmente. Se riduci a icona e ripristini la finestra, lo stato "sempre in primo piano" viene generalmente mantenuto, ma chiudere e riaprire Excel richiederà di eseguire nuovamente la macro.
Nota: Se desideri riportare la finestra di Excel alla normalità in modo che non sia più sempre in primo piano, ripeti il processo di attivazione: premi F5 per aprire la finestra di dialogo Macro, scegli la macro SetXNormal e clicca su Esegui. La tua finestra di Excel si comporterà quindi normalmente.
Suggerimenti per la risoluzione dei problemi: Se ricevi un errore durante l'esecuzione della macro, verifica attentamente le impostazioni di sicurezza delle macro e assicurati che tutto il codice della macro sia stato incollato correttamente. Alcuni ambienti aziendali possono limitare determinate operazioni di gestione delle finestre, quindi consulta l'IT se il metodo non funziona come previsto. Inoltre, assicurati di eseguire Excel come utente standard; eseguirlo come amministratore generalmente non è necessario per questa operazione.
Questa soluzione VBA è ideale se non vuoi installare software di terze parti e ti senti a tuo agio con l'utilizzo delle funzioni di scripting integrate di Excel. Tuttavia, se hai spesso bisogno di fissare finestre provenienti da più applicazioni, potresti preferire uno strumento dedicato alla gestione delle posizioni delle finestre.
I migliori strumenti per la produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!