Note: The other languages of the website are Google-translated. Back to English

Kako ustvariti dinamična kaskadna polja s seznami v Excelu?

Morda veste, kako v Excelu ustvarite spustni seznam kaskadnega preverjanja veljavnosti. Kako pa ustvariti dinamična kaskadna polja s seznami v Excelu? Ta članek predstavlja metodo VBA za njegovo znižanje.

Ustvarite dinamična kaskadna polja s seznamom s kodo VBA

Kartica Office Omogočite urejanje in brskanje z zavihki v storitvi Office ter olajšajte svoje delo ...
Kutools za Excel rešuje večino vaših težav in poveča vašo produktivnost za 80%
  • Ponovno uporabi vse: Med priljubljene dodajte najbolj uporabljene ali zapletene formule, grafikone in kar koli drugega ter jih v prihodnosti hitro ponovno uporabite.
  • Več kot 20 besedilnih funkcij: Izvleček številke iz besedilnega niza; Izvleči ali odstrani del besedil; Pretvorite številke in valute v angleške besede.
  • Združi orodja: Več delovnih zvezkov in listov v eno; Združi več celic / vrstic / stolpcev brez izgube podatkov; Združi podvojene vrstice in vsoto.
  • Razdeljena orodja: Razdeli podatke na več listov na podlagi vrednosti; En delovni zvezek v več datotek Excel, PDF ali CSV; En stolpec na več stolpcev.
  • Prilepi preskoči Skrite / filtrirane vrstice; Štetje in vsota glede na Barva ozadja; V večjem obsegu pošiljajte osebna e-poštna sporočila več prejemnikom.
  • Super filter: Ustvarite napredne filtrirne sheme in uporabite za vse liste; Razvrščanje po tednih, dnevih, pogostosti in še več; filter s krepkim tiskom, formule, komentar ...
  • Več kot 300 zmogljivih funkcij; Deluje z Office 2007-2021 in 365; Podpira vse jezike; Enostavna uvedba v vašem podjetju ali organizaciji.

Ustvarite dinamična kaskadna polja s seznamom s kodo VBA

Kot je prikazano na spodnji sliki zaslona, ​​morate ustvariti nadrejeno polje s seznamom, ki vsebuje edinstvene vrednosti stolpca Drink, in prikazati vse ustrezne vrednosti v drugem polju s seznamom glede na izbiro v nadrejenem seznamu. Naslednja koda VBA vam pomaga, da jo dosežete. Naredite naslednje.

1. Najprej morate iz stolpca Drink izvleči vse edinstvene vrednosti. Izberite prazno celico, vnesite formulo matrike =IFERROR(INDEX($A$2:$A$11, MATCH(0,COUNTIF($J$1:J1, $A$2:$A$11), 0)),"") v Formula Barin nato pritisnite Ctrl + Shift + Vnesite tipko. Nato povlecite Ročica za polnjenje da dobite vse edinstvene vrednosti. Oglejte si posnetek zaslona:

Opombe: V formuli, $A$2:$A$11 je obseg, iz katerega boste izvlekli edinstvene vrednosti. J1 je celica zgoraj, kjer je vaša formula.

Nasvet: Če je formulo težko zapomniti in obvladati, Izberite Podvojene in edinstvene celice uporabnost Kutools za Excel bo dobra izbira za hitro izločanje vseh edinstvenih vrednosti iz stolpca.

Izberite stolpec, ki vsebuje edinstvene vrednosti, iz katerih boste črpali. Nato s klikom omogočite pripomoček Kutools > Izberite > Izberite Podvojene in edinstvene celice. v Izberite Podvojene in edinstvene celice v pogovornem oknu izberite Vsi unikatni (vključno s 1. dvojniki) in kliknite na OK . Nato so v stolpcu izbrane vse edinstvene vrednosti. Prosimo, kopirajte jih in prilepite na novo mesto. Oglejte si posnetek zaslona:

Kutools za Excel: z več kot 200 priročnimi dodatki za Excel, brezplačno preizkusite brez omejitev v 60 dneh. Prenesite in brezplačno preskusite zdaj!

2. Dve polji s seznamom vstavite ločeno s klikom Razvojni > Vstavi > List List (ActiveX Control). Oglejte si posnetek zaslona:

3. Z desno miškino tipko kliknite nadrejeno polje s seznamom in izberite Nepremičnine iz kontekstnega menija. V Nepremičnine pogovorno okno, spremenite (Ime) polje v drink ali drugo ime, kot ga potrebujete, vnesite obseg celic, ki vsebuje izvlečene edinstvene vrednosti v ListFillRange polje in zaprite pogovorno okno.

4. Ponovite 3. korak, da spremenite drugo polje s seznamom (Ime) polje do Element v Nepremičnine pogovorno okno.

5. Z desno miškino tipko kliknite jeziček lista in izberite Ogled kode v meniju z desnim klikom. Nato kopirajte spodnjo kodo VBA v okno Code. Oglejte si posnetek zaslona:

Koda VBA: v Excelu ustvarite dinamična kaskadna polja s seznami

Dim xPreStr As String
Private Sub Drink_Click()
'Update by Extendoffice 2018/06/04
    Dim I, xRows As Long
    Dim xRg As Range
    Dim xRegStr As String
    Application.ScreenUpdating = False
    xRegStr = Me.Drink.Text
    Set xRg = Range("A2:A11")
    xRows = xRg.Rows.Count
    If xRegStr <> xPreStr Then
    Me.Item.Clear
   'Me.OtherListBoxName.Clear
    Set xRg = xRg(1)
    For I = 1 To xRows
        If xRg.Offset(I - 1).Value = xRegStr Then
            Me.Item.AddItem xRg.Offset(I - 1, 1).Value
            'Me.OtherListBoxName.AddItem xRg.Offset(I - 1, 2).Value
        End If
    Next
    xPreStr = xRegStr
    End If
    Application.ScreenUpdating = True
End Sub

Opombe: V kodi Drink in Item sta imena dveh seznamskih polj, spremenite jih v svoja imena.

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

7. Izklopite način oblikovanja s klikom Razvojni > Način oblikovanja.

Od zdaj naprej bodo pri izbiri katere koli vrste pijače, kot je kava, v nadrejenem seznamu vsi elementi kave prikazani v drugem. Izberite Tea ali Wine bo v drugem polju s seznamom prikazal samo izdelke s čajem ali vinom. Oglejte si posnetek zaslona:


Sorodni članki:


Najboljša orodja za pisarniško produktivnost

Kutools za Excel rešuje večino vaših težav in poveča vašo 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-2021 in 365. Podpira vse jezike. Enostavna uvedba v vašem podjetju ali organizaciji. 30-dnevna brezplačna preizkusna različica vseh funkcij. 60-dnevna garancija vračila 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 miške za vas!
dno pisarniške mize
Komentarji (1)
Ocene še ni. Bodite prvi in ​​ocenite!
Ta komentar je moderator na spletnem mestu minimiziral
Hi

Kaj se v kodi nanaša na "jaz" in kako se bo koda spremenila, če imam seznamno polje MultiSelect?

S spoštovanjem
Tu še ni objavljenih komentarjev
Pustite vaše komentarje
Objava kot gost
×
Ocenite to objavo:
0   Znaki
Predlagane lokacije

Sledi nam

Copyright © 2009 - www.extendoffice.com. | Vse pravice pridržane. Poganja ga ExtendOffice. | Kazalo
Microsoft in logotip Office sta blagovni znamki ali registrirani blagovni znamki družbe Microsoft Corporation v ZDA in / ali drugih državah.
Zaščiteno s Sectigo SSL