Встановлення значення за замовчуванням для динамічного каскадного списку перевірки в Excel 2010


11

Я нарешті з’ясував, як створити динамічний каскадний набір списків у Excel за допомогою перевірки даних та функції INDIRECT. Однак я зіткнувся з проблемою.

Я хотів би налаштувати свою електронну таблицю так, щоб при зміні списку перевірки даних усі наступні списки встановлювались за замовчуванням. Наприклад:

Скажімо, у мене є List1, List2, List3 та List4. Значення кожного списку залежать від вибору, зробленого у списку перед ним. Коли я запускаю електронну таблицю, я хочу, щоб усі списки за замовчуванням були "ВСІ". Коли користувач вибирає значення у List1, List2 оновлює набір допустимих варіантів. Я хотів би встановити List2 за одним із цих варіантів. Однак, хоча я можу отримати List2 для заповнення правильним набором параметрів вибору, я не можу отримати присвоєне йому бажане значення за замовчуванням.

Так само, якщо користувач робить вибір у List1, List2 та List3, то повертається назад і змінює List1, я хотів би, щоб List2-List4 повернувся до замовчування на "ALL".

Як це зробити?


3
Це завдання для тригера події VBA workheet_change. Зараз у мене немає часу надати деталі (пізніше я буду, якщо вам все-таки потрібна допомога), але саме там ви повинні направити свої дослідження.
Excellll

Ви, мабуть, вирішили це до цього часу або відмовилися. Я погоджуюся з Excellll, що подія зміни робочого аркуша може бути найпростішою. Однак за допомогою параметра «Список» для перевірки даних джерелом може бути такий вираз, як =IF(A1="List1",C1:C5,D1:D4). Я перевірив це зі значенням комірки A1, вибраного зі списку, і воно працює так, як ви шукаєте.
Тоні Даллімор

Ви все ще відчуваєте цю проблему?
Тамара Війсман

FYI, метод nonVBA, який я використовую для цієї проблеми, полягає у застосуванні КОНДИЦІОНАЛЬНОГО форматування до наступних комірок, що перевіряє, чи відповідає поточне значення, яке воно містить, у поточному діапазоні відліку INDIRECT (). Якщо НЕ, то клітинка стає червоною, або значення зникає (відповідний шрифт / фон), тому користувач знає, що значення для цієї комірки необхідно оновити / переобирати.
Джеррі Бокер

Щоб проілюструвати як метод VBA, так і метод CF, про який я згадував вище, тут є зразок файлу DependentLists3.xls
Джеррі Бокар

Відповіді:


1

Метод nonVBA, який я використовую для цієї проблеми, полягає у застосуванні КОНДИЦІОНАЛЬНОГО форматування до наступних комірок, що перевіряє, чи відповідає поточне значення, яке він містить, у поточному діапазоні відбиття INDIRECT (). Якщо НЕ, то клітинка стає червоною, або значення зникає (відповідний шрифт / фон), тому користувач знає, що значення для цієї комірки необхідно оновити / переобирати.

Щоб проілюструвати це (і метод VBA, згаданий іншими вище), тут є зразок файлу . Файл, який ви хочете, - DependentLists3.xls

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.