Создание динамического именованного диапазона в Excel

Я пытаюсь создать именованный диапазон для использования в раскрывающемся меню проверки данных. Я создаю это из таблицы, однако я хочу отображать только значения из столбца A, которые соответствуют определенным критериям (истина или ложь) в столбце C. Однако значения в столбце C могут измениться, поэтому мне нужен именованный диапазон чтобы иметь возможность также измениться.

Моя таблица выглядит так:

    A    B    C
    1    ..   1
    2    ..   0
    3    ..   1
    4    ..   0
    5    ..   1
    6    ..   1

Я хотел бы, чтобы именованный диапазон выбирал значения для A, где c равно 1 - или в этом примере 1,3,5,6.


person Martin Bergin    schedule 10.12.2013    source источник
comment
I would like the named range to pick the values for A where c is 1 - or in this example 1,3,5,6. И я хотел бы посмотреть, что вы пробовали до сих пор и где застряли? Вопросы, требующие кода, должны демонстрировать минимальное понимание решаемой проблемы, включая попытки решения, причины, по которым они не сработали, и ожидаемые результаты. См. Также: Контрольный список вопросов по переполнению стека   -  person Siddharth Rout    schedule 10.12.2013
comment
Я пробовал использовать различные методы, которые нашел здесь и в Интернете в целом, а также решение, включающее сводную таблицу. Однако это было не идеально, так как требовалось обновлять сводную таблицу и именованный диапазон при изменении данных.   -  person Martin Bergin    schedule 10.12.2013


Ответы (1)


Попробуйте использовать вспомогательный столбец:

В D2 введите

=IF(C2,ROW(),"")

Скопируйте. Создайте список значений в столбце F, начиная с F2 с

=IFERROR(INDEX(A:A,SMALL(D:D,ROW(A1))),"")

Скопируйте. Создайте именованный диапазон, который ссылается на формулу

=Sheet1!$F$2:INDEX(Sheet1!$F:$F,MATCH(99^99,Sheet1!$F:$F,1))

Используйте это имя диапазона в значении списка проверки данных.

Когда значение в столбце C изменяется с 0 на 1 или наоборот, список проверки немедленно обновляется.

введите описание изображения здесь

person teylyn    schedule 10.12.2013
comment
+1 Красиво объяснила Ингеборг :) - person Siddharth Rout; 10.12.2013