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

Обмен опытом => Microsoft Excel => Тема начата: Sveta от 01.02.2016, 19:01

Название: Автоматизировать заполнение таблицы по условию
Отправлено: Sveta от 01.02.2016, 19:01
Здравствуйте=) я новичок и мне сразу дали непростое задание. Помогите пожалуйста разобраться как это сделать.
Необходимо чтобы таблица на листе1 автоматически заполнялась при заполнение таблицы на листе2. Но на листе1  должны отображаться данные только определенных столбцов (во вложении они выделены желтым цветом) и по условию, что в таблице на листе2  Количество>0 (количество-это столбец на листе2).
Как должно все выглядеть можно посмотреть во вложении.
Помогите пожалуйста!!!!!!
Название: Re: Автоматизировать заполнение таблицы по условию
Отправлено: IKor от 11.11.2016, 09:45
2 Sveta

Пожалуйста, посмотрите прилагаемый файл.
В таблице на листе 1 добавлены формулы, возвращающие значения из строк с ненулевым количеством из таблицы листа 2.
Для работы формул потребовалось добавить вспомогательный столбец на лист 2 (он выделен цветом).
Кроме того обратите внимание на то, что значения в оригинальном столбце количество имеют не числовые, а текстовые значения - поэтому их потребовалось преобразовать в число.
При необходимости Вы можете скопировать преобразованные значения и вставить_как_значение в столбец количество => а затем перенастроить вспомогательный столбец.

Будут вопросы - обращайтесь :)
Название: Re: Автоматизировать заполнение таблицы по условию
Отправлено: Sveta от 11.11.2016, 17:58
Большое Спасибо!!!!!!!!!
Название: Re: Автоматизировать заполнение таблицы по условию
Отправлено: zs5 от 14.11.2016, 21:04
один лист; без преобразования текстовых значений, указанных в примере, без вспомогательных столбцов:
=ЕСЛИ(СТРОКА(A7)=7; ИНДЕКС($A$7:$J$14;ПОИСКПОЗ("1";D7:$D$14;0);1);ЕСЛИ(СЧЁТЗ($P$3:P3)<СЧЁТЕСЛИ(D7:$D$14;"1")-1;ИНДЕКС(ИНДЕКС(СМЕЩ(Лист2!$D$7:$D$14;ПОИСКПОЗ(M14;Лист2!$A$7:$A$14;0);0):Лист2!$D$14;1;1):$A$14;ПОИСКПОЗ("1";ИНДЕКС(СМЕЩ(Лист2!$D$7:$D$14;ПОИСКПОЗ(M14;Лист2!$A$7:$A$14;0);0):Лист2!$D$14;1;1):Лист2!$D$14;0);1);""))