Preskoči na glavno vsebino

Kako izpolniti besedilno polje na podlagi izbire kombiniranega polja v UserForm v Excelu?

Recimo, da tabela vsebuje stolpec Ime in številko osebja, kot je prikazano spodaj. Zdaj morate ustvariti uporabniški obrazec, vdelan s kombiniranim poljem, ki zbira vsa imena znotraj, in poljem z besedilom, ki bo zapolnilo ustrezno številko osebja pri izbiri imena iz kombiniranega polja. Metoda v tem članku vam lahko pomaga, da jo znižate.

Popolnite besedilno polje na podlagi izbire kombiniranega polja v Userform z VBA


Popolnite besedilno polje na podlagi izbire kombiniranega polja v Userform z VBA

Naredite naslednje, da zapolnite besedilno polje z ustrezno vrednostjo glede na izbiro kombiniranega polja v Userform.

1. Pritisnite druga + F11 tipke za odpiranje Microsoft Visual Basic za aplikacije okno.

2. V Ljubljani Microsoft Visual Basic za aplikacije okno, kliknite Vstavi > Uporabniška oblika. Oglejte si posnetek zaslona:

3. Nato v ustvarjeni Userform vstavite kontrolnik Combo box in Control box, kot je prikazano spodaj.

4. Z desno miškino tipko kliknite poljuben prazen prostor Userform in nato kliknite Ogled kode iz kontekstnega menija. Oglejte si posnetek zaslona:

5. V začetnem oknu Userform (Code) kopirajte in prilepite spodnjo kodo VBA, da zamenjate izvirnik.

Koda VBA: Zapolnite besedilno polje na podlagi izbire kombiniranega polja v 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

Opombe: V kodi je A2:B2 obseg, ki vsebuje vrednosti, ki jih boste vnesli ločeno v kombinirano polje Userform in besedilno polje. In Sheet5 je ime delovnega lista, ki vsebuje obseg podatkov. Spremenite jih po potrebi.

6. Pritisnite druga + Q tipke za izhod iz Microsoft Visual Basic za aplikacije okno.

7. klik Razvojni > Vstavi > Ukazni gumb (nadzor ActiveX) da v delovni list vstavite ukazni gumb.

8. Z desno miškino tipko kliknite zavihek lista in izberite Ogled kode iz menija z desnim klikom. Nato kopirajte in prilepite kodo VBA v okno kode.

Koda VBA: Pokaži uporabniški obrazec

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

9. Izklopite način načrtovanja v delovnem zvezku.

Kliknite ukazni gumb, da odprete navedeni uporabniški obrazec. Nato lahko vidite, da so vsa imena zbrana v kombiniranem polju. Ko izberete ime iz kombiniranega polja, se ustrezna številka osebja samodejno vnese v besedilno polje, kot je prikazano na spodnjem posnetku zaslona.


Sorodni članki:

Najboljša pisarniška orodja za produktivnost

Priljubljene funkcije: Poiščite, označite ali identificirajte dvojnike   |  Izbriši prazne vrstice   |  Združite stolpce ali celice brez izgube podatkov   |   Krog brez formule ...
Super iskanje: Več kriterijev VLookup    Multiple Value VLookup  |   VLookup na več listih   |   Nejasno iskanje ....
Napredni spustni seznam: Hitro ustvarite spustni seznam   |  Odvisni spustni seznam   |  Večkrat izberite spustni seznam ....
Upravitelj stolpcev: Dodajte določeno število stolpcev  |  Premakni stolpce  |  Preklop stanja vidnosti skritih stolpcev  |  Primerjaj obsege in stolpce ...
Predstavljene funkcije: Mrežni fokus   |  Pogled oblikovanja   |   Velika vrstica formule    Upravitelj delovnih zvezkov in listov   |  Knjižnica virov (Samodejno besedilo)   |  Izbirnik datuma   |  Združite delovne liste   |  Šifriranje/dešifriranje celic    Pošljite e-pošto po seznamu   |  Super filter   |   Poseben filter (filter krepko/ležeče/prečrtano ...) ...
15 najboljših kompletov orodij12 Besedilo Orodja (dodajanje besedila, Odstrani znake,...)   |   50 + Graf Vrste (Gantt Chart,...)   |   40+ Praktično Formule (Izračunajte starost glede na rojstni dan,...)   |   19 vstavljanje Orodja (Vstavite kodo QR, Vstavi sliko s poti,...)   |   12 Pretvorba Orodja (Številke v besede, Pretvorba valut,...)   |   7 Spoji in razdeli Orodja (Napredne kombinirane vrstice, Razdeljene celice,...)   |   ... in več

Napolnite svoje Excelove spretnosti s Kutools za Excel in izkusite učinkovitost kot še nikoli prej. Kutools za Excel ponuja več kot 300 naprednih funkcij za povečanje produktivnosti in prihranek časa.  Kliknite tukaj, če želite pridobiti funkcijo, ki jo najbolj potrebujete...

zavihek kte 201905


Kartica Office prinaša vmesnik z zavihki v Office in poenostavi vaše delo

  • Omogočite urejanje in branje z zavihki v Wordu, Excelu, PowerPointu, Publisher, Access, Visio in Project.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Poveča vašo produktivnost za 50%in vsak dan zmanjša na stotine klikov miške za vas!
Comments (11)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
can the same be don on excel sheet? instead of userform? i am using sheet not userform
This comment was minimized by the moderator on the site
alguem poderia me ajudar estou tentando carregar a combobox e puxar informações para text box so que esta dando erro 381

Private Sub ComboNome_Emissor_Change()
TextArea.Text = ComboNome_Emissor.List(ComboNome_Emissor.ListIndex, 1)
TextTreinamento_PT.Text = ComboNome_Emissor.List(ComboNome_Emissor.ListIndex, 3)
TextTreinamento_EC.Text = ComboNome_Emissor.List(ComboNome_Emissor.ListIndex, 5)
TexStatus_Bloqueio.Text = ComboNome_Emissor.List(ComboNome_Emissor.ListIndex, 6)


End Sub
This comment was minimized by the moderator on the site
The method is very simple and populates the combo box quite efficiently. However, when I try populating the text box, I get a run-time error '1004': Unable to get the VLookup property of the WorksheetFunction class. Kindly assist with resolving this error.
This comment was minimized by the moderator on the site
I just tried this code and was running into the same issue. I realized I had the xRg variable inside the UserForm block, so it was not being accessed by my ComboBox function. Maybe others are running into the same issue
This comment was minimized by the moderator on the site
Hi,
May I have your Office version? I need the feedback to check for the error.
Thanks for your comment.
This comment was minimized by the moderator on the site
office 2010 32 bit
This comment was minimized by the moderator on the site
Good day,
I have tried the code in Office 2010 32 bit, but no errors occured.
Please make sure the sheet name and cell range in the first VBA code are the same with your actual sheet name and range.
Thanks for your comment.
This comment was minimized by the moderator on the site
Hi,
i have same issue with office 2013. Any solution please
This comment was minimized by the moderator on the site
i have the same problem....
This comment was minimized by the moderator on the site
I too have the same problem
This comment was minimized by the moderator on the site
Hi Chaylon,
Have you replaced the sheet name in the below code line with your actual used worksheet name?
Set xRg = Worksheets("Sheet5").Range("A2:B8")
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations