Cum să populezi caseta de text pe baza selecției combinate pe UserForm în Excel?
Presupunând că aveți un tabel conține o coloană Numele și numărul personalului, după cum se arată în imaginea de mai jos. Acum trebuie să creați un Userform încorporat cu o casetă combinată care colectează toate numele în interior și o casetă text care va completa numărul personalului corespunzător atunci când selectați numele din caseta combo. Metoda din acest articol vă poate ajuta să o descărcați.
Populați caseta de text pe baza selecției combinate pe Userform cu VBA
Populați caseta de text pe baza selecției combinate pe Userform cu VBA
Vă rugăm să procedați după cum urmează pentru a completa caseta de text cu valoarea corespunzătoare pe baza selecției combinate din formularul de utilizator.
1. apasă pe Alt + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.
2. În Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Formular de utilizator. Vedeți captura de ecran:
3. Apoi introduceți un control casetă Combo și un control casetă Text în Formularul de utilizator creat, așa cum este prezentat mai jos.
4. Faceți clic dreapta pe orice spațiu gol al Formei de utilizator, apoi faceți clic pe Afișați codul din meniul contextual. Vedeți captura de ecran:
5. În fereastra de deschidere Userform (Code), vă rugăm să copiați și să lipiți codul VBA de mai jos pentru a înlocui originalul.
Cod VBA: Populați caseta de text pe baza selecției combinate pe formularul de utilizator
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
notițe: În cod, A2: B2 este intervalul conține valorile pe care le veți completa separat atât în caseta combo Userform, cât și în caseta de text. Și Sheet5 este numele foii de lucru conține intervalul de date. Vă rugăm să le schimbați după cum aveți nevoie.
6. apasă pe Alt + Q tastele pentru a ieși din Microsoft Visual Basic pentru aplicații fereastră.
7. clic Dezvoltator > Insera > Buton de comandă (control ActiveX) pentru a insera un buton de comandă în foaia de lucru.
8. Faceți clic dreapta pe fila foaie și selectați Afișați codul din meniul cu clic dreapta. Apoi copiați și lipiți codul VBA în fereastra de cod.
Cod VBA: Afișați forma de utilizator
Private Sub CommandButton1_Click()
'Updated by Extendoffice 2018/1/30
UserForm1.Show
End Sub
9. Opriți modul de proiectare în registrul de lucru.
Faceți clic pe butonul de comandă pentru a deschide forma de utilizator specificată. Apoi, puteți vedea toate numele sunt colectate în caseta combinată. Când selectați un nume din caseta combinată, numărul personalului corespunzător va fi completat automat în caseta de text, așa cum este prezentat mai jos.
Legate de articole:
- Cum se completează o casetă combinată cu datele specificate în Registrul de lucru deschis?
- Cum să populați automat alte celule atunci când selectați valori în lista verticală Excel?
- Cum să populați automat alte celule atunci când selectați valori în lista verticală Excel?
- Cum să populezi rezultatele căutării Google în foaia de lucru în Excel?
Cele mai bune instrumente de productivitate de birou
Îmbunătățiți-vă abilitățile Excel cu Kutools for Excelși experimentați eficiența ca niciodată înainte. Kutools for Excel Oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp. Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...
Office Tab Aduce interfața cu file la Office și vă face munca mult mai ușoară
- Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
- Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ferestrele noi.
- Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!











