Профессиональные приемы работы в Microsoft Excel

Обмен опытом => Microsoft Excel => Тема начата: kinrew от 14.09.2018, 17:06

Название: Динамически формируемая таблица
Отправлено: kinrew от 14.09.2018, 17:06
Привет!
Как в Excel сделать динамически формируемую таблицу (с данными о сотрудниках выбранного магазина).
Пользователь выбирает в ячейке справа вверху фамилию директора. По этому директору в таблицу ниже выводятся все сотрудники его магазина.

Выпадающий список с директорами я сделал. При постоянном наборе магазинов, через промежуточную таблицу: № магазина - ФИО через ВПР. Может как-то можно сделать чтобы при добавлении нового магазина выпадающий список тоже дополнялся?
А как сделать, чтобы в таблицу под директором подтягивались все его сотрудники и при выборе нового директора эта таблица сразу обновлялась?
Название: Re: Динамически формируемая таблица
Отправлено: vikttur от 14.09.2018, 21:26
Отвечать тоже картинкой? Прикрепите к первому сообщению небольшой пример в Excel
Название: Re: Динамически формируемая таблица
Отправлено: kinrew от 16.09.2018, 12:38
Цитата: vikttur от 14.09.2018, 21:26
Прикрепите к первому сообщению небольшой пример в Excel
Прикрепил
Название: Re: Динамически формируемая таблица
Отправлено: TimSha от 16.09.2018, 17:03
Цитата: kinrew от 14.09.2018, 17:06
...А как сделать, чтобы в таблицу под директором подтягивались все его сотрудники и при выборе нового директора эта таблица сразу обновлялась?
Сводная таблица -с выбором через срез\ы. Как вариант.
Название: Re: Динамически формируемая таблица
Отправлено: boa от 16.09.2018, 18:27
Добрый день,
Список директоров можно получить следующей формулой
=ЕСЛИОШИБКА(ИНДЕКС(R6C5:R83C5;НАИМЕНЬШИЙ(ЕСЛИ(R6C7:R83C7="Директор";СТРОКА(R6C5:R83C5)-СТРОКА(R5C5);"");СТРОКА(R[-5]C)));"")
список сотрудников
=ЕСЛИОШИБКА(ИНДЕКС(R6C5:R83C5;НАИМЕНЬШИЙ(ЕСЛИ(R6C6:R83C6=Магазин;СТРОКА(R6C5:R83C5)-СТРОКА(R5C5);"");СТРОКА(R[-8]C)));"")
это формулы массива (вводится Ctrl+Shift+Enter)

В менеджере имен(Ctrl+F3) добавить имена
Список_Директоров (используется при формировании выпадающего списка)=Лист1!R6C17:ИНДЕКС(Лист1!R6C17:R106C17;ЧСТРОК(Лист1!R6C17:R106C17)-СЧИТАТЬПУСТОТЫ(Лист1!R6C17:R106C17))
и Магазин =ВПР(Лист1!R6C15;Лист1!R6C5:R83C6;2;0)
Название: Re: Динамически формируемая таблица
Отправлено: kinrew от 17.09.2018, 16:42
boa Огромное спасибо! Вариант с массивными функциями именно то, что нужно!
Цитата: boa от 16.09.2018, 18:27
список сотрудников
=ЕСЛИОШИБКА(ИНДЕКС(R6C5:R83C5;НАИМЕНЬШИЙ(ЕСЛИ(R6C6:R83C6=Магазин;СТРОКА(R6C5:R83C5)-СТРОКА(R5C5);"");СТРОКА(R[-8]C)));"")
это формулы массива (вводится Ctrl+Shift+Enter)