Cum se creează casete de listă dinamice în cascadă în Excel?
Este posibil să știți cum să creați o listă derulantă de validare în cascadă în Excel. Cu toate acestea, cum să creați casete de listă dinamice în cascadă în Excel? Acest articol introduce o metodă VBA pentru ao descărca.
Creați casete de listă dinamice în cascadă cu cod VBA
- Reutilizați orice: Adăugați cele mai utilizate sau complexe formule, diagrame și orice altceva la preferatele dvs. și reutilizați-le rapid în viitor.
- Peste 20 de caracteristici text: Extrageți numărul din șirul de text; Extrageți sau eliminați o parte din texte; Conversia numerelor și valutelor în cuvinte în limba engleză.
- Instrumente de îmbinare: Mai multe cărți de lucru și foi într-unul; Combinați mai multe celule / rânduri / coloane fără a pierde date; Combinați rândurile duplicate și suma.
- Instrumente divizate: Împărțiți datele în mai multe foi bazate pe valoare; Un registru de lucru pentru mai multe fișiere Excel, PDF sau CSV; O coloană la mai multe coloane.
- Lipiți săriți Rânduri ascunse / filtrate; Număr și sumă de Culoarea fundalului; Trimiteți e-mailuri personalizate către mai mulți destinatari în bloc.
- Super Filtru: Creați scheme avansate de filtrare și aplicați oricăror foi; Sortează pe săptămână, zi, frecvență și multe altele; Filtru prin îndrăznețe, formule, comentarii ...
- Peste 300 de caracteristici puternice; Funcționează cu Office 2007-2021 și 365; Suporta toate limbile; Implementare ușoară în întreprinderea sau organizația dvs.
Creați casete de listă dinamice în cascadă cu cod VBA
Așa cum este prezentat mai jos captura de ecran, trebuie să creați o casetă listă părinte care să conțină valorile unice ale coloanei Băutură și să afișați toate valorile corespunzătoare în a doua casetă listă pe baza selecției din caseta listă părinte. Următorul cod VBA vă ajută să îl realizați. Vă rugăm să faceți următoarele.
1. În primul rând, trebuie să extrageți toate valorile unice din coloana Băutură. Selectați o celulă goală, introduceți formula matricei =IFERROR(INDEX($A$2:$A$11, MATCH(0,COUNTIF($J$1:J1, $A$2:$A$11), 0)),"") în Formula Barului, apoi apăsați tasta Ctrl + Schimba + Intrați cheie. Apoi trageți Mâner de umplere pentru a obține toate valorile unice. Vedeți captura de ecran:
notițe: În formulă, $A$2:$A$11 este intervalul din care veți extrage valori unice. J1 este celula de deasupra unde se află formula dvs.
varful: Dacă formula este prea greu de reținut și manipulat, Selectați celule duplicate și unice utilitatea Kutools pentru Excel va fi o alegere bună pentru a extrage rapid toate valorile unice dintr-o coloană.
Selectați coloana care conține valori unice din care veți extrage. Apoi activați utilitarul făcând clic pe Kutools > Selectați > Selectați celule duplicate și unice. În Selectați celule duplicate și unice caseta de dialog, selectați Toate unice (inclusiv primele duplicate) și faceți clic pe OK buton. Apoi toate valorile unice sunt selectate în coloană. Vă rugăm să le copiați și să le lipiți într-un loc nou. Vedeți captura de ecran:
Kutools pentru Excel: cu mai mult de 200 de programe de completare Excel la îndemână, încercați fără limitări în 60 de zile. Descărcați și proba gratuită acum!
2. Introduceți separat două casete de listă făcând clic pe Dezvoltator > Insera > Casetă listă (control ActiveX). Vedeți captura de ecran:
3. Faceți clic dreapta pe caseta listă părinte și selectați Proprietăţi din meniul contextual. În Proprietăţi caseta de dialog, schimbați fișierul (Nume) domeniu la Bea sau alt nume după cum aveți nevoie, introduceți intervalul de celule conține valorile unice extrase în ListFillRange și închideți caseta de dialog.
4. Repetați pasul 3 pentru a schimba cea de-a doua listă (Nume) câmp la Element în Proprietăţi căsuță de dialog.
5. Faceți clic dreapta pe fila foaie și selectați Afișați codul din meniul cu clic dreapta. Apoi copiați mai jos codul VBA în fereastra Cod. Vedeți captura de ecran:
Cod VBA: creați casete de listă dinamice în cascadă în Excel
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
notițe: În codul Băutură și articol sunt numele a două casete de listă, schimbați-le în propriile nume.
6. apasă pe Alt + Q tastele pentru a închide Microsoft Visual Basic pentru aplicații fereastră.
7. Dezactivați modul Design făcând clic pe Dezvoltator > Mod de proiectare.
De acum înainte, când selectați orice fel de băutură, cum ar fi Cafea în caseta listă părinte, toate articolele de cafea vor fi afișate în cea de-a doua. Selectați Ceai sau Vin va afișa numai articolele pentru ceai sau vin în a doua casetă de listă. Vedeți captura de ecran:
Legate de articole:
- Cum se șterge celula de listă verticală dependentă după selectarea modificată în Excel?
- Cum se creează liste drop-down dependente în cascadă în Excel?
- Cum să populați automat alte celule atunci când selectați valori în lista verticală Excel?
- Cum se creează un calendar de listă verticală în Excel?
- Hcum să salvați sau să păstrați selecții de casete de listă ActiveX în Excel?
Cele mai bune instrumente de productivitate Office
Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%
- reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
- Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
- Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
- Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
- Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
- Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
- Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
- Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
- Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.

Fila Office aduce interfața cu file în 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!
