Tips & Tricks‎ > ‎

TT-201610: A cosa serve ThisWorkbook - VBA



Prima di descrivere a cosa serve l'oggetto "ThisWorkBook" , che troviamo insieme agli altri fogli di lavoro nel riquadro "Project-VBA Project" dell'editor VBA, e' necessario introdurre il conceto di "Evento".

Un evento e' una qualsiasi azione compiuta dall'utente che Excel puo' intercettare: spostare il mouse, aprire un file, cambiare foglio di lavoro e cosi via.

Una volta che l'evento e' stato intercettato, e' possibile associare a cio' un'azione descritta da opportune linee di codice.
Il codice deve essere scritto direttamente all'interno o del foglio di lavoro o del file (appunto "Workbook") associato all'evento stesso.

Ad esempio, se vogliamo rispondere ad un certo evento che coinvolge tutto il foglio di lavoro, ebbene la routine andra' inclusa in "ThisWorkbook".

Supponiamo di volere ad esempio togliere i riferimenti alle righe e alle colonne automaticamente all'apertura del file Excel.

L'evento sara' l'apertura del file e la mia risposta al manifestarsi dell'evento coinvolgera' tutto il file di lavoro. Quindi devo intercettare l'evento con una opportuna chiamata di sistema, in questo caso Workbook_Open().

Dunque mi posiziono nell'are di lavoro "ThisWorkbook" e definisco la routine:

Sub workbook_Open()
  ActiveWindow.DisplayHeadings = False
End sub

D'ora in poi all'apertura del file e prima di passare il controllo all'utente, Excel eseguira' la procedura di cui sopra nascondendo automaticamente le intestazioni delle righe e colonne.

Questo puo' essere molto utile nella reportistica o nelle dashboard: eliminando automaticamente la visualizzazione delle intestazioni si avra' un maggiore spazio di rappresentazione, ma gli esempi possono essere innumerevoli.