Una casella combinata su un form utente è come un menu a discesa, che può essere utilizzato per scegliere un'opzione tra le opzioni disponibili. È come il menu a discesa che creiamo utilizzando la convalida dei dati sui fogli di lavoro.
Nella maggior parte dei moduli digitali, devi aver visto almeno una casella combinata. Potrebbe essere stato per selezionare uno stato da un elenco di stati, un corso da un elenco di corsi, un paese da un elenco di paesi, ecc. In questo articolo, impareremo come aggiungere una casella combinata in un modulo utente VBA, come per inizializzare la casella combinata con i valori e come recuperare il valore dalla casella combinata.
Aggiunta di una casella combinata al modulo utente
Per aggiungere una casella combinata a un form utente, devi prima avere un form utente. Dai!.
Quindi apri VBE usando CTRL + F11. Fare clic con il tasto destro sulla cartella di lavoro, andare su Inserisci e fare clic su Modulo utente. Hai aggiunto un modulo utente. Puoi leggere ulteriori informazioni sui moduli utente in VBA qui.
Ora dalla casella degli strumenti, scegli la casella combinata. È la quarta opzione nella riga superiore. Se non riesci a vedere la cassetta degli attrezzi. Vai a Visualizza nel menu, fai clic su Casella degli strumenti. Apparirà la casella degli strumenti.
Ho aggiunto un'etichetta di stati perché questa casella combinata conterrà un elenco di alcuni stati e un pulsante di invio per inviare il modulo.
Come inizializzare una casella combinata in userform?
Questa è la parte in cui la maggior parte delle persone commette errori. A volte gli studenti scrivono il codice per caricare i valori nella casella combinata, quindi inviano i pulsanti. E quando caricano il form utente, la casella combinata non mostra alcun valore.
Per caricare la combobox, è necessario scrivere il codice, prima di caricare il form utente. Questo può essere fatto nel modulo, c o il pulsante in cui si carica il modulo. Il codice per caricare l'elenco della casella combinata dovrebbe precedere il comando formname.show.
Caricamento della casella combinata nel modulo utente che chiama subroutine
Diciamo che voglio codificare un array nella casella combinata di stato. Quindi scriverò una subroutine che caricherà il form utente per riempire le informazioni. Vedi il codice sotto.
Sub load_userform() stati = Array("Delhi", "UP", "UK", "Gujrat", "Kashmir") UserForm1.ComboBox1.List = afferma UserForm1.Show End Sub
Definisco un array "stati" che contiene alcuni nomi di stati indiani. Ora uso il nome del form utente per accedere a combobox poiché combobox fa parte del form utente.
Il nome del mio form utente è userform1. E il nome di combobox è combobox1. Questi sono i nomi predefiniti. Puoi modificarli dalla finestra delle proprietà.
Quindi inizializzo la proprietà dell'elenco della casella combinata con gli stati.
E poi mostro userform1 usando il comando show.
Quando esegui il codice sopra, la casella combinata avrà tutti gli stati elencati.
Inizializzazione della casella combinata utilizzando l'evento UserForm_Initialize().
Un altro metodo per caricare i componenti della casella combinata sul form utente consiste nell'utilizzare l'evento Userform Initialize. Questo evento viene eseguito prima del caricamento del form utente. Qualsiasi cosa tu voglia fare prima che venga caricato il form utente, puoi farlo qui. Una di queste cose è caricare gli elementi della casella combinata.
Quindi fai doppio clic su userform per aprire l'area di codifica nell'oggetto userform. Ora dal menu a tendina di sinistra seleziona il form utente. Quindi dal menu a discesa a destra seleziona inizializza.
Verrà inserito un sottonome vuoto UserForm_Initialize(). Tutto ciò che è scritto in questo sottotitolo verrà eseguito prima che venga visualizzato il form utente.
Quindi scriviamo qui il codice di inizializzazione per combobox.
Private Sub UserForm_Initialize() afferma = Array("Delhi", "UP", "UK", "Gujrat", "Kashmir") UserForm1.ComboBox1.List = afferma End Sub
Nota che non abbiamo il comando userform1.show qui. È ancora in quel modulo. Quel sottotitolo verrà utilizzato per visualizzare il nostro modulo utente sullo schermo.
Sub load_userform() UserForm1.Show End Sub
Quindi gli utenti eseguiranno load_userform sub usando alcuni comandi, pulsanti o elementi assegnati alla macro. Quando il compilatore esegue il comando codice userform1.show, esegue immediatamente l'evento useforma_initialize(). Successivamente mostra il form utente agli utenti.
Appunti:
Se scrivi il codice per inizializzare la casella combinata con i valori nel clic di comando button1, la casella combinata non mostrerà nulla.
Per inizializzare la casella combinata con i valori, caricarla in ogni caso che si verifica prima che l'utente raggiunga la casella combinata da riempire.
Recupero del valore da ComboBox
Quindi usiamo i moduli per ottenere alcune informazioni. E per usare queste informazioni, dobbiamo recuperarle. Per ottenere qualsiasi valore dalla casella combinata userform usiamo la proprietà combobox.value. Generalmente recuperiamo i valori dagli elementi del modulo una volta che l'utente completa il modulo e invia il modulo utilizzando il pulsante di invio. Quindi possiamo usare l'evento commandbutton_click. Quindi inserisci un pulsante di comando e scrivici sopra, se non lo hai già. Ora fai doppio clic su di esso e ti troverai all'interno dell'evento commandButton_click.
Ora crea una variabile per memorizzare il valore. Se vuoi, salvalo su un foglio. Infine esci dal modulo usando il comando Unload Me. Come mostrato nel codice sottostante.
Private Sub CommandButton1_Click() State = ComboBox1.Value ThisWorkbook.Worksheets("sheet1").Range("A1") = State Unload Me End Sub
Quindi sì ragazzi, ecco come usate combobox nei moduli utente VBA. Spero di essere stato esplicativo e al punto. Se hai domande su questo argomento o su qualsiasi altra domanda relativa a VBA, chiedimi nella sezione commenti qui sotto.
Iniziare con i moduli utente VBA di Excel| Spiegherò come creare un modulo in excel, come utilizzare il toolbox VBA, come gestire gli input dell'utente e infine come archiviare gli input dell'utente. Esamineremo questi argomenti utilizzando un esempio e una guida passo passo.
Variabili VBA in Excel| VBA sta per Visual Basic for Applications. È un linguaggio di programmazione di Microsoft. Viene utilizzato con applicazioni Microsoft Office come MSExcel, MS-Word e MS-Access mentre le variabili VBA sono parole chiave specifiche.
Ambito variabile VBA di Excel| In tutti i linguaggi di programmazione, abbiamo identificatori di accesso alle variabili che definiscono da dove è possibile accedere a una variabile definita. Excel VBA non fa eccezione. Anche VBA ha identificatori di ambito.
Argomenti ByRef e ByVal | Quando un argomento viene passato come argomento ByRef a una sub o funzione diversa, viene inviato il riferimento della variabile effettiva. Qualsiasi modifica apportata alla copia della variabile si rifletterà nell'argomento originale.
Elimina i fogli senza richieste di conferma utilizzando VBA in Microsoft Excel | Poiché stai eliminando i fogli utilizzando VBA, sai cosa stai facendo. Vorresti dire a Excel di non mostrare questo avviso ed eliminare il dannato foglio.
Aggiungi e salva una nuova cartella di lavoro utilizzando VBA in Microsoft Excel 2016| In questo codice, abbiamo prima creato un riferimento a un oggetto cartella di lavoro. E poi lo abbiamo inizializzato con un nuovo oggetto cartella di lavoro. Il vantaggio di questo approccio è che puoi eseguire facilmente le operazioni su questa nuova cartella di lavoro. Come salvare, chiudere, eliminare, ecc
Visualizza un messaggio sulla barra di stato VBA di Excel| La barra di stato in Excel può essere utilizzata come monitor del codice. Quando il tuo codice VBA è lungo e svolgi diverse attività utilizzando VBA, spesso disabiliti l'aggiornamento dello schermo in modo da non vedere lo sfarfallio dello schermo.
Disattiva i messaggi di avviso utilizzando VBA in Microsoft Excel 2016| Questo codice non solo disabilita gli avvisi VBA, ma aumenta anche l'efficienza temporale del codice. Vediamo come.
Articoli popolari:
50 scorciatoie di Excel per aumentare la produttività | Diventa più veloce nel tuo compito. Queste 50 scorciatoie ti faranno lavorare ancora più velocemente su Excel.
La funzione CERCA.VERT in Excel | Questa è una delle funzioni più utilizzate e popolari di Excel che viene utilizzata per cercare il valore da diversi intervalli e fogli.
CONTA.SE in Excel 2016 | Conta i valori con le condizioni usando questa fantastica funzione. Non è necessario filtrare i dati per contare valori specifici. La funzione Countif è essenziale per preparare la tua dashboard.
Come utilizzare la funzione SOMMA.SE in Excel | Questa è un'altra funzione essenziale della dashboard. Questo ti aiuta a riassumere i valori su condizioni specifiche.