Controllo delle dimensioni della finestra durante l’apertura di cartelle di lavoro aggiuntive (Microsoft Excel)
Se Steven ha una cartella di lavoro aperta e ingrandita e quindi apre una o più cartelle di lavoro aggiuntive, le cartelle di lavoro aggiuntive sembrano ingrandite ma non lo sono realmente. I lati sinistro, inferiore e destro di queste cartelle di lavoro aggiuntive si trovano ai bordi dello schermo, ma le parti superiori scendono verso il basso, come le schede di indice sfalsate l’una dall’altra. Per Steve, sarebbe molto meglio se le cartelle di lavoro aggiuntive si aprissero come una porzione più piccola della finestra o completamente ingrandite in modo da poter “ripristinare” le finestre a una dimensione più piccola. Si chiede se ci sia qualche impostazione che controlla la dimensione della finestra per queste cartelle di lavoro aggiuntive quando vengono aperte.
Puoi piuttosto facilmente influenzare ciò che accade con una finestra della cartella di lavoro attraverso l’uso di macro. La posizione normale per eseguire questa operazione sarebbe nella macro Workbook_Open, che è un gestore di eventi nell’oggetto ThisWorkbook. Ecco una versione molto semplice che si assicurerebbe semplicemente che la finestra sia ingrandita:
Public Sub WorkBook_Open() Application.WindowState = xlMaximized End Sub
È quindi possibile, se lo si desidera, regolare manualmente la dimensione della finestra ingrandita.
Ovviamente, potresti anche “costruire” la macro in modo che manipoli la finestra in altri modi. Ad esempio, la seguente è una macro che determinerà la dimensione massima dello schermo del monitor su cui si apre la cartella di lavoro, quindi regola la dimensione della finestra per occupare il 72% della larghezza dello schermo e il 96% dell’altezza dello schermo.
Public Sub WorkBook_Open() Dim iMaxWidth As Integer 'Screen width (pixels) Dim iMaxHeight As Integer 'Screen height (pixels) Dim sngStartX As Single 'Upper-left corner of desired window Dim sngStartY As Single 'Upper-left corner of desired window Dim sngWidth As Single 'Width of desired window Dim sngHeight As Single 'Height of desired window 'Specifications for final window size sngStartX = 0.14 'Fraction of screen width from left edge sngStartY = 0.02 'Fraction of screen height from top sngWidth = 0.72 'Fraction of screen width desired sngHeight = 0.96 'Fraction of screen height desired With Application 'Maximize screen in order to grab maximum width and height .WindowState = xlMaximized iMaxWidth = .Width iMaxHeight = .Height .WindowState = xlNormal 'Set final window position and size .Top = iMaxHeight sngStartY .Left = iMaxWidth sngStartX .Width = sngWidth iMaxWidth .Height = sngHeight iMaxHeight End With End Sub
È possibile, ovviamente, regolare le impostazioni nelle due variabili (sngWidth e sngHeight) per scegliere una dimensione dello schermo finale diversa. È anche possibile regolare le impostazioni nelle variabili sngStartX e sngStartY per specificare la posizione per l’angolo superiore sinistro della finestra finale.
ExcelTips è la tua fonte di formazione economica su Microsoft Excel.
Questo suggerimento (4975) si applica a Microsoft Excel 2007, 2010, 2013 e 2016.