Note: The other languages of the website are Google-translated. Back to English
Vpiši se  \/ 
x
or
x
Registracija  \/ 
x

or

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 vsebuje vrednosti, ki jih boste vnesli ločeno v kombinirano polje Userform in besedilno polje. Sheet5 je ime delovnega lista, ki vsebuje obseg podatkov. Prosimo, 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 jeziček lista in izberite Ogled kode v meniju z desnim klikom. Nato kopirajte in prilepite kodo VBA v okno s kodo.

Koda VBA: Prikaži uporabniški obrazec

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

9. Izklopite način oblikovanja 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 spodaj.


Sorodni članki:


Najboljša orodja za pisarniško produktivnost

Kutools za Excel rešuje večino vaših težav in poveča produktivnost za 80%

  • Ponovna uporaba: Hitro vstavite zapletene formule, grafikoni in vse, kar ste že uporabljali; Šifriraj celice z geslom; Ustvari poštni seznam in pošiljanje e-pošte ...
  • Vrstica Super Formula (enostavno urejanje več vrstic besedila in formule); Bralna postavitev (enostavno branje in urejanje velikega števila celic); Prilepite v filtrirani obseg...
  • Združi celice / vrstice / stolpce brez izgube podatkov; Vsebina razdeljenih celic; Združi podvojene vrstice / stolpce... prepreči podvojene celice; Primerjaj obsege...
  • Izberite Duplicate ali Unique Vrstice; Izberite prazne vrstice (vse celice so prazne); Super Find in Fuzzy Find v mnogih delovnih zvezkih; Naključna izbira ...
  • Natančna kopija Več celic brez spreminjanja sklica formule; Samodejno ustvarjanje referenc na več listov; Vstavi oznake, Potrditvena polja in še več ...
  • Izvleček besedila, Dodaj besedilo, Odstrani po položaju, Odstrani presledek; Ustvari in natisni vmesne seštevke strani Pretvarjanje med vsebino celic in komentarji...
  • Super filter (shranite in uporabite sheme filtrov za druge liste); Napredno razvrščanje glede na mesec / teden / dan, pogostost in drugo; Poseben filter s krepko, ležeče ...
  • Združite delovne zvezke in delovne liste; Spoji tabele na podlagi ključnih stolpcev; Razdelite podatke na več listov; Paketna pretvorba xls, xlsx in PDF...
  • Več kot 300 zmogljivih funkcij. Podpira Office / Excel 2007-2019 in 365. Podpira vse jezike. Preprosta namestitev v vašem podjetju ali organizaciji. Vse funkcije 30-dnevnega brezplačnega preskusa. 60-dnevno jamstvo za vračilo denarja.
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 z miško!
dno pisarniške mize
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Everton · 1 years ago
    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
  • To post as a guest, your comment is unpublished.
    carey.ogola@gmail.com · 3 years ago
    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.
    • To post as a guest, your comment is unpublished.
      Carla Cox · 1 years ago
      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
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi,
      May I have your Office version? I need the feedback to check for the error.
      Thanks for your comment.
      • To post as a guest, your comment is unpublished.
        hoa tran · 2 years ago
        office 2010 32 bit
        • To post as a guest, your comment is unpublished.
          crystal · 2 years ago
          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.
          • To post as a guest, your comment is unpublished.
            Dimal · 2 years ago
            Hi,
            i have same issue with office 2013. Any solution please
            • To post as a guest, your comment is unpublished.
              Olban Noe Izaguirre · 2 years ago
              i have the same problem....
              • To post as a guest, your comment is unpublished.
                Chaylon · 2 years ago
                I too have the same problem
                • To post as a guest, your comment is unpublished.
                  crystal · 2 years ago
                  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")