Motivazioni per usare le UserForm
- Interfacce utente grafiche per semplificare l’interazione con l’utente finale.
- Ideali per raccogliere più dati contemporaneamente, controllare la validità degli input, offrire un’interfaccia intuitiva e professionale, navigare o modificare dati in modo guidato.
Creazione di UserForm
- Editor VBA: Alt + F11 per accedere, Inserisci → UserForm.
- Toolbox: trascinare controlli come caselle di testo, pulsanti, elenchi a discesa, etichette, checkbox.
- Mostrare una UserForm:
Sub MostraForm() NomeForm.Show End Sub
.
Alternative alle UserForm
- InputBox: raccogliere un valore dall’utente tramite una finestra di input semplice.
- MsgBox: mostrare un messaggio all’utente e può restituire una risposta (OK, Cancel, Yes, No).
Creazione e Gestione delle UserForm
- Interfacce grafiche in VBA per interagire con il codice in modo strutturato.
- Aggiungere controlli: TextBox, CommandButton, ComboBox, CheckBox, Label.
- Modificare proprietà: Name, Caption, Enabled, Visible, Value/Text.
- Gestire eventi: Click su un pulsante, cambiamento valore in TextBox, selezione in ComboBox.
- Visualizzare una UserForm:
Sub MostraForm() NomeForm.Show End Sub
.
Secondo Esempio di UserForm
- Creazione della UserForm: TextBox (Nome, Cognome, Email), ComboBox (Dipartimento), CommandButton (Salva, Annulla).
- Procedure evento:
Private Sub btnSalva_Click() If txtNome = "" Or txtCognome = "" Then MsgBox "Compila tutti i campi obbligatori.", vbExclamation Exit Sub Range("A1") = txtNome Range("B1") = txtCognome Range("C1") = txtEmail Range("D1") = cboDipartimento MsgBox "Dati salvati con successo." Unload Me End Sub
. - Visualizzazione della UserForm:
Sub MostraForm() UserForm2.Show End Sub
.
Rendere la macro disponibile
- Pulsante nel foglio: ‘Sviluppo’ → ‘Inserisci’ → ‘Pulsante (controllo modulo)’.
- Barra di accesso rapido: ‘Personalizza barra di accesso rapido’, aggiungi la macro MostraForm.