Новости:

Из правил форума: Тема должна отражать суть вопроса, топики типа "help please" будут удаляться!

Главное меню

Экспорт данных между таблицами. Как?

Автор Chivava, 20.07.2012, 18:33

« назад - далее »

Chivava

Здравствуйте.
Как вы поняли из названия темы - сюда попал чайник)
В общем, хочу научится данной процедуре. Задача в чем: В таблице №1 есть идентичные артикула с таблицей №2. Нужно что бы артикула из обеих таблиц сравнивались и в таблице №1 происходило следующее. Если в таблице №2 есть артикул в определенном количестве, к примеру больше 10 (столбец F), то в таблице №1 в столбце C должна появляться цифра 1, а значения в столбцах должны сравниваться соответственно: таблица №1,столбец D=таблица №2 столбец D и таблица №1,столбец E=таблица №2 столбец E. Помогите, пожалуйста.

IKor

Здравствуйте.

Насколько я понял из Вашего сообщения перед Вами стоят две задачи:
1. Для каждого артикула таблицы 1 определить количество товара в таблице 2
2. Для каждого артикула таблицы 1 сравнить старую и новую цены, указанные в таблице 2

Для решения этих задач Вам потребуется разобраться с двумя функциями СУММЕСЛИ() и ВПР(_)

1. Разберем на конкретном примере:
В Таблице 1 (в столбце С или в свободном столбце) запишите функцию:
=СУММЕСЛИ('[Таблица 2.xls]Взуття'!$B$6:$B$20;B1;'[Таблица 2.xls]Взуття'!$F$6:$F$20)
Эта функция возвращает сумму всех ячеек столбца F Таблицы 2, для которых указан артикул (Столбец B Таблицы 2), совпадающий с артикулом в текущей ячейке Таблицы 1 - B1.

В дальнейшем Вы можете усложнить функцию:
=ЕСЛИ(СУММЕСЛИ('[Таблица 2.xls]Взуття'!$B$6:$B$20;B1;'[Таблица 2.xls]Взуття'!$F$6:$F$20)>10;1;0)
для того, чтобы она возвращала не суммарное количество, а нужные Вам 0 и 1.

Для интереса также посмотрите в справке описание функции СЧЁТЕСЛИ()

2. Запишите в свободном столбце Таблицы 1 следующую формулу:
=ВПР(B1;'[Таблица 2.xls]Взуття'!$A$6:$F$20;4;0)
Эта функция ищет строку в левом столбце Таблицы 2 (столбец А), содержащую артикул B1, и возвращает значение из этой строки и 4-го столбца Таблицы 2. Последний параметр функции 0 означает поиск точного соответствия указанного артикула.

При помощи этой функции в Таблицу 1 можно вытащить данные как по старой (4-й столбец), так и по новой цене (5-й столбец Таблицы 2).

Хочу отдельно подчеркнуть, что для функции ВПР(_) важно, чтобы столбец, в котором ищутся артикулы, был самым левым (первым) в таблице - если логика представления Ваших данных отличается, то либо указывайте соответствующие диапазоны, либо используйте другую функцию - ПОИСКПОЗ() + ИНДЕКС() - подробности в справке.

К сожалению из Вашего сообщения мне не понятно каким образом планируется производить сравнение указанных цен:
- цены из Таблицы 2 можно просто показывать в отдельных столбцах
- можно подтягивать цены из Таблицы 2 вместо цен Таблицы 1
- можно выделять цветом совпадающие / несовпадающие цены обеих таблиц (условное_форматирование)

Необходимые дополнения:
1. В приведенных таблицах НЕТ пересекающихся артикулов, поэтому функция СУММЕСЛИ() возвращает 0, а ВПР(_) возвращает #Н/Д
2. Следует отметить, что если в Таблице 2 будут присутствовать два (и более) артикулов из таблицы 1, то функция СУММЕСЛИ() вернет суммарное количество по всем строкам Таблицы 2, а функция ВПР(_) вернет цены только из первой (верхней) найденной строки в таблице 2.
3. Так как две таблицы представлены в отдельных файлах, то указанные функции гарантированно будут работать ТОЛЬКО при открытых обоих документах.