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
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 de birou
Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru 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...
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!