86 подписчиков
🎰 Связанные выпадающие списки с мультивыбором — новое решение от нашего активного участника Игоря Дроздова. Спасибо тебе, Игорь, за твою помощь и вклад в сообщество! 👏
🖇 Что такое выпадающие списки с мультивыбором?
Выпадающие списки в Google Таблицах позволяют пользователям выбирать значения из заранее определённого списка, что упрощает ввод данных. Но что, если нам нужно выбрать несколько значений? Выпадающие списки с мультивыбором расширяют стандартный функционал, позволяя выбирать несколько элементов одновременно.
💡 Как это работает?
В Google Таблицах выпадающие списки можно создавать "из диапазона", где данные берутся из определенного диапазона ячеек на листе. Для того чтобы сделать зависимые списки, мы будем динамически изменять содержимое этих диапазонов на основе выбранных значений (например, страна и область). Результаты вычислений формул будут автоматически обновляться в этих диапазонах, что позволит отображать правильные значения в выпадающих списках.
Игорь поделился решением для создания связанных выпадающих списков с мультивыбором, которые динамически обновляются на основе предыдущих выборов. Это означает, что вы можете выбрать несколько значений в первом списке, и второй список обновится в соответствии с выбранными элементами.
📝 Пример решения
В качестве примера использования выбираем города, в зависимости от выбранных стран и их областей.
Вот формулы, которые позволяют это сделать:
1️⃣Формула для областей:
=UNIQUE(
FILTER(
B2:B;
IF(
E3="";
A2:A<>"";
MATCH(
A2:A;
SPLIT(E3;", ");
0
)
)
)
)
🤓 разбираем формулу:
- FILTER(B2:B; ...) — фильтрует диапазон столбца B, возвращая только те значения, которые соответствуют заданному критерию.
- IF(E3=""; A2:A<>""; ...) — если ячейка E3 пуста, фильтрует все строки, где столбец A не пустой. В противном случае сравнивает значения в столбце A с выбранными странами из ячейки E3.
- SPLIT(E3;", ") — разбивает строку в E3 на отдельные элементы, если в ней несколько стран, разделённых запятыми.
- MATCH(A2:A; SPLIT(E3;", ");0) — находит соответствия между значениями в столбце A и элементами списка стран.
- UNIQUE(...) — удаляет дублирующиеся значения из полученного списка.
2️⃣Формула для городов:
=UNIQUE(
FILTER(
C2:C;
IF(
E5="";
MATCH(
B2:B;
G2:G;
0
);
MATCH(
B2:B;
SPLIT(E5;", ");
0
)
)
)
)
🤓 разбираем формулу:
- FILTER(C2:C; ...) — фильтрует диапазон столбца C, возвращая города, которые соответствуют выбранной области.
- IF(E5=""; MATCH(B2:B; G2:G; 0); ...) — если ячейка E5 пуста, выбирает все города из столбца B, которые соответствуют выбранной области в столбце G. В противном случае сравнивает значения в столбце B с выбранными областями из ячейки E5.
- MATCH(B2:B; SPLIT(E5;", ");0) — находит соответствия между значениями в столбце B и выбранными областями, разделёнными запятыми.
- UNIQUE(...) — удаляет дублирующиеся города из списка.
⚠️ Важный нюанс: Обратите внимание, что при изменении выбора в одном из списков, предыдущие выборы могут не обновляться автоматически. Подобные задачи нужно решать уже с помощью Скриптов.
✍️ Так, и вот это еще законспектируйте:
Связанные списки правильно работают только со скриптом, всё остальное это костыли. Но иногда костыли - это именно то, что нужно!
Игорь©️
Функции: #UNIQUE #FILTER #IF #MATCH #SPLIT
Присоединяйтесь к сообществу профессионалов Google Таблиц, делитесь знаниями и помогайте друг другу!
💬 Чат
📢 Канал
#решения #выпадающие_списки #связанные_списки #зависимые_списки
2 минуты
19 сентября 2024