Menu Chiudi

MS Excel 40 – Creazione di UserForms

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.
Pubblicato il Microsoft 365, MS Excel - Dispense, MS-Excel