Vai al contenuto principale

Come popolare la casella di testo in base alla selezione della casella combinata su UserForm in Excel?

Autore: Silvia Ultima modifica: 2024-10-23

Supponendo che una tabella contenga un nome e una colonna del numero del personale come mostrato nell'immagine sottostante. Ora è necessario creare un modulo utente incorporato con una casella combinata che raccolga tutti i nomi all'interno e una casella di testo che popolerà il numero del personale corrispondente quando si seleziona il nome dalla casella combinata. Il metodo in questo articolo può aiutarti a rimuoverlo.

Uno screenshot che mostra una tabella con le colonne Nome e Numero del personale in Excel

Popolare la casella di testo in base alla selezione della casella combinata su Userform con VBA


Popolare la casella di testo in base alla selezione della casella combinata su Userform con VBA

Si prega di fare quanto segue per popolare la casella di testo con il valore corrispondente in base alla selezione della casella combinata su Userform.

1. premi il altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Modulo utente. Vedi screenshot:

Uno screenshot che mostra come inserire un UserForm in Excel VBA

3. Quindi inserire un controllo Casella combinata e un controllo Casella di testo nel modulo utente creato come mostrato nell'immagine sottostante.

Uno screenshot di un UserForm in Excel con una ComboBox e una TextBox aggiunte

4. Fare clic con il pulsante destro su qualsiasi spazio vuoto dell'Userform e quindi scegliere Visualizza codice dal menu contestuale. Vedi screenshot:

Uno screenshot che mostra come aprire la finestra del codice per UserForm in Excel VBA

5. Nella finestra di apertura Userform (Codice), copiare e incollare il codice VBA sottostante per sostituire l'originale.

Codice VBA: popolare la casella di testo in base alla selezione della 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

Note:: Nel codice, A2: B2 è l'intervallo che contiene i valori che verranno popolati separatamente sia nella casella combinata Userform che nella casella di testo. E Sheet5 è il nome del foglio di lavoro che contiene l'intervallo di dati. Si prega di cambiarli come necessario.

6. premi il altro + Q tasti per uscire da Microsoft Visual Basic, Applications Edition finestra.

7. Clic Sviluppatore > inserire > Pulsante di comando (controllo ActiveX) per inserire un pulsante di comando nel foglio di lavoro.

8. Fare clic con il pulsante destro del mouse sulla scheda del foglio e selezionare Visualizza codice dal menu di scelta rapida. Quindi copia e incolla il codice VBA nella finestra del codice.

Codice VBA: mostra il modulo utente

Private Sub CommandButton1_Click()
'Updated by Extendoffice 2018/1/30
    UserForm1.Show
End Sub

9. Disattivare la modalità di progettazione nella cartella di lavoro.

Fare clic sul pulsante di comando per aprire il modulo utente specificato. Quindi puoi vedere tutti i nomi raccolti nella casella combinata. Quando si seleziona un nome dalla casella combinata, il numero del personale corrispondente verrà popolato automaticamente nella casella di testo come mostrato nell'immagine sottostante.

Uno screenshot che mostra l'UserForm con la selezione ComboBox che popola la TextBox in Excel


Articoli correlati:

I migliori strumenti per la produttività in ufficio

🤖 Assistente AI di Kutools: Rivoluziona l'analisi dei dati basandosi su: Esecuzione intelligente   |  Genera codice  |  Crea formule personalizzate  |  Analizzare i dati e generare grafici  |  Richiama le funzioni di Kutools...
Funzioni popolari: Trova, evidenzia o identifica i duplicati   |  Elimina righe vuote   |  Combina colonne o celle senza perdere dati   |   Round senza formula ...
Super ricerca: VLookup a criteri multipli    VLookup a valori multipli  |   VLookup su più fogli   |   Ricerca fuzzy ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa   |  Elenco a discesa dipendente   |  Elenco a discesa a selezione multipla ....
Gestore di colonna: Aggiungi un numero specifico di colonne  |  Sposta colonne  |  Attiva/disattiva lo stato di visibilità delle colonne nascoste  |  Confronta intervalli e colonne ...
Funzionalità in primo piano: Messa a fuoco della griglia   |  Vista di progettazione   |   Grande barra delle formule    Gestore di cartelle di lavoro e fogli   |  Resource Library (Testo automatico)   |  Date picker   |  Combina fogli di lavoro   |  Crittografa/decrittografa le celle    Invia e-mail per elenco   |  Super filtro   |   Filtro speciale (filtro grassetto/corsivo/barrato...) ...
I 15 migliori set di strumenti12 Testo Tools (aggiungi testo, Rimuovi personaggi, ...)   |   50+ Grafico Tipi (Diagramma di Gantt, ...)   |   40+ Pratico Formule (Calcola l'età in base al compleanno, ...)   |   19 Inserimento Tools (Inserisci il codice QR, Inserisci immagine dal percorso, ...)   |   12 Conversione Tools (Numeri in parole, Conversione di valuta, ...)   |   7 Unisci e dividi Tools (Combina righe avanzate, Celle divise, ...)   |   ... e altro ancora

Potenzia le tue competenze di Excel con Kutools per Excel e sperimenta l'efficienza come mai prima d'ora. Kutools per Excel offre oltre 300 funzionalità avanzate per aumentare la produttività e risparmiare tempo.  Fai clic qui per ottenere la funzionalità di cui hai più bisogno...


Office Tab porta l'interfaccia a schede in Office e semplifica notevolmente il tuo lavoro

  • 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 della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce ogni giorno centinaia di clic del mouse!