© Сорокин Б.Б. 2016 г.

Управление списками

Управление списками рассмотрим на том же примере, что и Создание списков.

Управление списками может понадобится в тех случаях, когда набор значений вносимых в одно поле зависти от значения ячейки в другом поле. В рассматриваемом примере это поля "Вопрос" и "Ответ". Список ответов заранее определен и ограничен, однако ответы зависят от вопроса.

управление списками управление списками

Как поступить правильно?

Для ответов на разные вопросы использовать разные поля с соответствующими списками? Это приведет к необоснованному расширению количества полей базы данных, кроме этого появятся пустые записи, а это, в общем и целом, не хорошо.

Собрать все ответы в один список? Список получится большим, с ним будет неудобно работать. Кроме этого потребуется "напряжение ума" что бы выбрать ответ принадлежащий заданному вопросу - следовательно это может привести к ошибкам.

Лучше всего, сделать так, чтобы в поле "ответ" подставлялись имена списков, а следовательно и сами списки, в зависимости от значения ячейки в поле "Вопрос". Для этого в поле "Источник" надо ввести функцию ЕСЛИ(), возвращающую имена списков в зависимости от значения ячейки в поле "Вопрос".

управление списками

Учитывая, что формула в поле "Источник" целиком невидна, привожу ее отдельно в полной красе.

формула

Внимание! Имена списков (Ответ; Кандидаты; Ответ1) в формуле в кавычки брать ненадо, т.к. это уже не текст, это имя списка! В конце формулы стоит "1", т.е. если ни одно условие не выполняется функция ЕСЛИ() в качестве имени списка вернет "1". Так как такого списка не существует, то он будет пуст. Это дополнительная страховка от ошибок.

Для тех кто превозмогая нечеловеческую усталость, безразличие и скуку все таки смог прочитать все три поста о СПИСКАХ - бонус - архив файла Excel с описанным примером, там есть еще макросы, поэтому не пугайтесь это из другой темы.