In VBA, puoi creare un CheckBox dove un utente può selezionare o deselezionare l'opzione. Una casella di controllo viene spesso utilizzata nei moduli utente, ma può essere utilizzata anche in un foglio di lavoro. In questo tutorial imparerai come creare una casella di controllo, ottenere una scelta utente in VBA e utilizzarla nel codice.
Se vuoi imparare come creare una casella di riepilogo, fai clic qui: Casella di riepilogo VBA
Se vuoi imparare a creare un Combobox, clicca qui: Combobox VBA
Crea una casella di controllo
Per inserire una casella di controllo nel foglio di lavoro, devi andare su Scheda Sviluppatore, clicca Inserire e in Controlli ActiveX scegli Casella di controllo:
Immagine 1. Inserisci una casella di controllo nel foglio di lavoro
Quando selezioni la casella di controllo che hai inserito, puoi fare clic su Proprietà sotto il Scheda Sviluppatore:
Immagine 2. Modifica proprietà casella di controllo
Qui puoi impostare diverse proprietà della casella di controllo. Per l'inizio, abbiamo cambiato l'attributo Nome a cmbCheckbox. Ora possiamo usare la casella di controllo con questo nome nel codice VBA.
Inoltre, abbiamo modificato il testo che appare accanto alla casella di controllo in Accetto i Termini. Per fare ciò, è necessario impostare l'attributo Didascalia.
Ottieni un elemento selezionato di una casella di controllo in VBA
Lo scopo di una casella di controllo è ottenere una scelta dell'utente (casella di controllo selezionata o meno). Per recuperare un valore selezionato dall'utente, è necessario utilizzare questo codice:
123456789 | Se Sheet1.chbCheckBox.Value = True alloraFoglio1.Range("C3") = "Accetto"AltroFoglio1.Range("C3") = "Non sono d'accordo"Finisci se |
Vogliamo popolare la cella C3 con Concordare se la casella di controllo è selezionata e Non sono d'accordo altrimenti. Il valore della casella di controllo è inValore attributo dell'oggetto Foglio1.chbCasella di controllo. Il valore della casella di controllo può essere vero o falso.
Immagine 3. Ottieni un valore selezionato dalla casella di controllo in VBA
Quando abbiamo selezionato la casella di controllo, il valore di Foglio1.chbCheckbox.Value è vero, quindi il risultato in C3 è Concordare.
Usa una casella di controllo in un modulo utente
Come accennato, Checkbox è più spesso utilizzato in Userforms. Per spiegare come puoi farlo, inseriremo prima un Userform. Nell'editor VBA, fare clic con il pulsante destro del mouse su Nome modulo, fare clic su Inserire e scegli Modulo utente:
Immagine 8. Inserisci un modulo utente
Per visualizzare i controlli per l'inserimento, è necessario abilitare il Cassetta degli attrezzi. Per farlo, clicca suCassetta degli attrezzi icona nella barra degli strumenti. Successivamente, otterrai le finestre con tutti i controlli disponibili. Puoi cliccare su Casella di controllo per crearlo nel form utente:
Immagine 9. Inserisci una casella di controllo nel modulo utente
Nella finestra delle proprietà, cambieremo il nome della casella di controllo in chbCheckBox e didascalia a Accetto i Termini. Quando eseguiamo il form utente, otteniamo la casella di controllo in esso.
Immagine 10. La casella di controllo nel modulo utente
Se vuoi ottenere il valore selezionato dalla casella di controllo, devi utilizzare la stessa logica per la casella di controllo in un foglio di lavoro, come spiegato in precedenza nell'articolo.