Come popolare una casella di testo in base alla selezione effettuata in una casella combinata su un UserForm di Excel?
Si supponga di avere una tabella contenente una colonna Nome e una colonna Numero dipendente, come mostrato nello screenshot seguente. Ora è necessario creare un UserForm con una casella combinata che raccoglie tutti i nomi e una casella di testo che popola automaticamente il numero del dipendente corrispondente quando si seleziona un nome dalla casella combinata. Il metodo descritto in questo articolo può aiutarti a realizzarlo.

Popola la casella di testo in base alla selezione nella casella combinata su UserForm con VBA
Popola la casella di testo in base alla selezione nella casella combinata su UserForm con VBA
Segui questi passaggi per compilare automaticamente la casella di testo con il valore corrispondente in base alla selezione effettuata nella casella combinata del UserForm.
1. Premi i tasti Alt+F11 per aprire la finestra Microsoft Visual Basic for Applications.
2. Nella finestra Microsoft Visual Basic for Applications, fai clic su Inserisci > UserForm. Vedi lo screenshot:

3. Inserisci quindi un controllo Casella combinata e un controllo Casella di testo nel UserForm appena creato, come illustrato nello screenshot seguente.

4. Fai clic con il pulsante destro del mouse su uno spazio vuoto del UserForm, quindi seleziona Visualizza codice dal menu contestuale. Vedi lo screenshot:

5. Nella finestra (Codice) del UserForm aperta, copia e incolla il seguente codice VBA per sostituire quello originale.
Codice VBA: Popola la casella di testo in base alla selezione nella casella combinata su UserForm
Dim xRg As Range
'Updated by Extendoffice 2018/1/30
Private Sub UserForm_Initialize()
Set xRg = Worksheets("Sheet5").Range("A2:B8")
Me.ComboBox1.List = xRg.Columns(1).Value
End Sub
Private Sub ComboBox1_Change()
Me.TextBox1.Text = Application.WorksheetFunction.VLookup(Me.ComboBox1.Value, xRg, 2, False)
End Sub Nota: Nel codice, A2:B2 è l'intervallo contenente i valori che verranno inseriti separatamente nella casella combinata e nella casella di testo del UserForm, mentre Foglio5 è il nome del foglio di lavoro che contiene l’intervallo dati. Modificali in base alle tue esigenze.
6. Premi i tasti Alt+Q per chiudere la finestra Microsoft Visual Basic for Applications.
7. Clicca su Sviluppo > Inserisci > Pulsante comando (controllo ActiveX) per inserire un pulsante comando nel foglio di lavoro.
8. Fai clic con il pulsante destro sulla scheda del foglio e seleziona Visualizza codice dal menu contestuale. Quindi copia e incolla il codice VBA nella finestra del codice.
Codice VBA: Mostra UserForm
Private Sub CommandButton1_Click()
'Updated by Extendoffice 2018/1/30
UserForm1.Show
End Sub 9. Disattiva la modalità Progettazione nella cartella di lavoro.
Fai clic sul pulsante comando per aprire il UserForm specificato. Potrai vedere che tutti i nomi sono raccolti nella casella combinata. Quando selezioni un nome dalla casella combinata, il numero del dipendente corrispondente viene automaticamente popolato nella casella di testo, come mostrato nello screenshot seguente.

Articoli correlati:
- Come popolare una casella combinata con dati specificati all’apertura della cartella di lavoro?
- Come compilare automaticamente altre celle quando si seleziona un valore da un elenco a discesa in Excel?
- Come compilare automaticamente altre celle quando si seleziona un valore da un elenco a discesa in Excel?
- Come popolare automaticamente i risultati della ricerca Google in un foglio di lavoro di Excel?
Migliori Strumenti per la Produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un’efficienza mai vista prima.Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e Risparmia tempo.Clicca qui per ottenere la funzionalità di cui hai più bisogno...
Office Tab Porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede all’interno della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e risparmia centinaia di clic del mouse ogni giorno!
Tutti i componenti aggiuntivi di Kutools in un unico programma di installazione.
Kutools for Office è la suite che include componenti aggiuntivi per Excel, Word, Outlook e PowerPoint, oltre a Office Tab Pro: la soluzione ideale per i team che lavorano su diverse app di Office.
- Suite completa— componenti aggiuntivi per Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Un unico programma di installazione, una sola licenza— configurazione in pochi minuti (pronto per MSI)
- Funziona meglio insieme— produttività ottimizzata tra le app di Office
- Prova gratuita di 30 giorni con tutte le funzionalità— nessuna registrazione, nessuna carta di credito
- Miglior rapporto qualità-prezzo— risparmia rispetto all’acquisto dei singoli componenti aggiuntivi