Articolo wiki
  • Questo articolo wiki è bloccato
Applicabile a 3348 visualizzazioni

Excel - UserForm a tutto schermo (lavorare con i fogli nascosti) - VBA

Riepilogo

Livello tecnico: Conoscenza di base di Visual Basic for Applications Si applica a: Excel (2003/2007/2010/2013)

Dettagli

NOTA. Gli esempi ed il codice sono forniti *così come sono* e l’autore declina ogni responsabilità per un loro uso scorretto. Utilizzate gli esempi forniti o file di prova per i vostri test. La correzione delle eccezioni (errori) e il controllo del tipo di dati inserito è solo parziale. I file vogliono essere un semplice esempio che illustra come sia possibile automatizzare Excel e sono forniti solo a scopo dimostrativo.

 

Situazione.
Vogliamo che all'avvio del file di Excel la UserForm sia l'unica cosa visibile sullo schermo, lavorando su fogli nascosti alla vista dell'utente. In pratica, la nostra UserForm riempirà tutto lo schermo e non sarà possibile chiuderla senza chiudere il file. Per consentire eventuali modifiche, abbiamo un pulsante che chiede sia inserita la password per chiudere la UserForm visualizzando i fogli. Utilizziamo poi un Modulo di Classe per nascondere la barra del titolo (vedi questo articolo Wiki: Excel - Modificare la visualizzazione di una UserForm - VBA).

 

Come funziona.

Il codice è ampiamente commentato e non dovrebbero esserci problemi a capirne il funzionamento.

Nel modulo di codice di Questa_cartella_di_lavoro (Excel 2010 e seguenti)  o ThsiWorkbook (Excel 2007 e precedenti) trovate l'evento Workbook_Open() che contiene la chiamata alla UserForm.

La UserForm è *spoglia*, non ha nessun controllo esclusi i due CommandButton che ne gestiscono la chiusura:

  • Chiudi - chiude la UserForm ed il file
  • Modifica - richiede una password (abc) per chiudere la UserForm senza chiudere il file, permettendo eventuali modifiche ai fogli e al codice

Ovviamente se dovete gestire i dati sui fogli, dovete implementare la UserForm con i controlli necessari.

Il modulo di classe contiene il codice che ci consente di nascondere la barra del titolo della UserForm.

 

Riferimenti.

Dal sito maurogsc.eu potete scaricare il file di esempio:

Altri articoli Wiki che riguardano il VBA di Excel e le UserForm:

 

Commenti.

Sono graditi i tuoi commenti a questo articolo Wiki e, se lo ritieni interessante, per favore spunta la voce : E' stato utile all'inizio della pagina.

Grazie.

 

NOTA. Excel non dispone nativamente di procedure assolutamente sicure per impedire la visualizzazione e la modifica del codice vb e/o per la protezione dei fogli. E’ una cosa da tenere sempre presente quando si distribuiscono file con contenuti ritenuti delicati. Ricordate anche che è possibile lanciare il file di Excel senza che vengano eseguite le macro.


Risorse.

 


 Avvio Pulito di Windows
(courtesy of Microsoft MVP Franco Leuzzi)


Computer infettato da malware (courtesy of Microsoft MVP Vincenzo Di Russo)



 

 

Commenti (0)

avanzamento