5

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

альтернативный текст

Мой вопрос: могу ли я поместить динамическую ссылку на таблицу в поле «источник»? Если да, то как я могу это сделать?

Благодарю.

5 ответов5

8

Начиная с Excel 2010, вы не можете напрямую использовать структурированные ссылки в качестве исходного списка для проверки данных. Однако вы МОЖЕТЕ определить имя для структурированной ссылки и использовать вместо этого новое имя.

Например, если у меня есть таблица с одним столбцом с именем Table1 которая содержит столбец с именем Acceptable Values , я мог бы определить новое имя ValidValues используя структурированную ссылку Table1[Acceptable Values] . В поле источника списка проверки данных я могу ввести =ValidValues

6

Чтобы ответить на ваш вопрос:

Могу ли я поместить ссылку на динамическую таблицу в поле «источник»? Если да, то как я могу это сделать?

Да! Как это...

Обратитесь к столбцу таблицы непосредственно из поля источника проверки данных, используя функцию INDIRECT .

Пример проверки данных Источник:

=INDIRECT("Table1[MyColumn]")

Только будьте осторожны: любые изменения имен ссылок на таблицы / столбцы не будут волшебным образом обновляться!

Рекомендации

  1. https://support.office.com/en-nz/article/INDIRECT-function-21f8bcfc-b174-4a50-9dc6-4dfb5b3361cd?ui=en-US&rs=en-NZ&ad=NZ
  2. http://www.get-digital-help.com/2012/10/15/how-to-use-a-table-name-in-data-validation-lists-and-conditional-formatting-formulas/
3

Я вижу два способа сделать это:

Использовать именованный диапазон

Выберите C1:C6 , в строке меню выберите Вставить -> Имя -> Определить , введите имя для диапазона (например, "ValidationList"). В окне "Проверка данных" над полем « Источник» должно быть установлено значение =ValidationList .

Всякий раз, когда вы добавляете элементы в список, вам нужно повторно посетить окно Вставка -> Имя -> Определить , выбрать именованный элемент из списка и изменить значение Привязать к, как требуется.

Все ссылки на =ValidationList будут автоматически указывать на новый измененный список.

Расширить центр списка

В этом примере вы используете $C$1:$C$6 качестве области списка, если вы вставляете новые ячейки в середину этого списка (т.е. выберите C4 , щелкните правой кнопкой мыши, вставьте, сдвиньте ячейки вниз), тогда диапазон должен быть расширен для тебя.

1
  1. Создайте таблицу, которая будет содержать варианты для выпадающего меню.

  2. Перейдите в « Formulas > « Name Manager > « New Name и определите имя для столбца таблицы, который вы хотите использовать для хранения выпадающего списка.
    Диалог нового имени

  3. Выберите диапазон / ячейку, которые вы хотите превратить в раскрывающийся список, и добавьте проверку данных как обычно, за исключением того, что в источнике вы будете использовать имя, которое вы определили ранее (например, =ListChoices).

Ссылка: http://excelsemipro.com/2011/05/a-dynamic-dependent-drop-down-list-in-excel/

0

Я хочу расширить ответ DMA57361 . Используйте именованный диапазон, но сделайте этот диапазон динамическим, чтобы при увеличении или уменьшении списка динамический диапазон расширялся и сжимался так, как вы этого хотите.

Если у вас есть список, начинающийся с C1 и заканчивающийся на C6, следующий код позволит ему расширяться и сокращаться. Как только ячейка останется пустой, список остановится.

=OFFSET($C$1, 0, 0, COUNTA($C:$C),1)

Поместите эту формулу в именованный диапазон и назовите ее ValidationList. В диалоговом окне проверки данных выберите список, а затем введите =ValidationList в качестве источника.

Действительно хороший ресурс для создания динамических именованных диапазонов: http://www.ozgrid.com/Excel/DynamicRanges.htm

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .