Як створити динамічні каскадні списки в Excel?
Можливо, ви знаєте, як створити розкривний список каскадної перевірки в Excel. Однак як створити динамічні каскадні списки в Excel? Ця стаття представляє метод VBA для його зниження.
Створюйте динамічні каскадні списки з кодом VBA
Створюйте динамічні каскадні списки з кодом VBA
Як показано на знімку екрана нижче, вам потрібно створити батьківський вікно списку, що містить унікальні значення стовпця Drink, і відобразити всі відповідні значення у другому полі списку на основі вибору в полі батьківського списку. Наступний код VBA допомагає вам його досягти. Будь ласка, виконайте наступне.
1. По-перше, вам потрібно витягти всі унікальні значення зі стовпця Drink. Виділіть порожню комірку, введіть формулу масиву =IFERROR(INDEX($A$2:$A$11, MATCH(0,COUNTIF($J$1:J1, $A$2:$A$11), 0)),"") в Бар Формула, а потім натисніть Ctrl + Shift + Що натомість? Створіть віртуальну версію себе у ключ. Потім перетягніть Ручка заповнення щоб отримати всі унікальні значення. Дивіться знімок екрана:
примітки: У формулі, $A$2:$A$11 - діапазон, з якого ви отримаєте унікальні значення. J1 - клітинка вгорі, де знаходиться ваша формула.
Чайові: Якщо формулу занадто важко запам'ятати та обробити, Виберіть Повторювані та унікальні комірки корисність Kutools для Excel буде гарним вибором для швидкого вилучення всіх унікальних значень зі стовпця.
Будь ласка, виберіть стовпець, що містить унікальні значення, з яких ви отримаєте. Потім увімкніть утиліту, клацнувши Кутулс > Select > Виберіть Повторювані та унікальні комірки, в Виберіть Повторювані та унікальні комірки діалоговому вікні, виберіть Усі унікальні (Включаючи 1-й дублікат) та натисніть кнопку OK кнопку. Потім у стовпці вибираються всі унікальні значення. Скопіюйте та вставте їх у нове місце. Дивіться знімок екрана:
Kutools для Excel: з більш ніж 200 зручними надбудовами Excel, спробуйте безкоштовно без обмежень протягом 60 днів. Завантажте та безкоштовно пробну версію зараз!
2. Вставте два поля списку окремо, клацнувши Розробник > Insert > Вікно списку (елемент керування ActiveX). Дивіться знімок екрана:
3. Клацніть правою кнопкою миші поле батьківського списку та виберіть властивості з контекстного меню. В властивості діалогове вікно, змініть (Ім'я) поле до напій або інше ім'я, яке вам потрібно, введіть діапазон комірок, що містить вилучені унікальні значення в ListFillRange поле та закрийте діалогове вікно.
4. Повторіть крок 3, щоб змінити друге поле списку (Ім'я) поле до елемента в властивості діалогове вікно.
5. Клацніть правою кнопкою миші вкладку аркуша та виберіть Переглянути код з меню правої кнопки миші. Потім скопіюйте код VBA у вікно коду. Дивіться знімок екрана:
Код VBA: Створіть динамічні каскадні списки в 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
примітки: У коді Drink and Item є назви двох списків, змініть їх на власні імена.
6 Натисніть кнопку інший + Q клавіші, щоб закрити Microsoft Visual Basic для додатків вікна.
7. Вимкніть режим дизайну, клацнувши Розробник > Режим дизайну.
Відтепер, при виборі будь-якого напою, такого як Кава, у полі батьківського списку всі предмети кави відображатимуться у другому. Виберіть "Чай або вино" відображатиме лише елементи чаю чи вина у другому полі списку. Дивіться знімок екрана:
Статті по темі:
- Як очистити залежну комірку випадаючого списку після вибору зміненого в Excel?
- Як створити залежні каскадні випадаючі списки в Excel?
- Як автоматично заповнити інші комірки при виборі значень у випадаючому списку Excel?
- Як створити календар випадаючого списку в Excel?
- Hщоб зберегти або зберегти виділення списків ActiveX у програмі Excel?
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!