Моя ситуация: я получил огромный лист превосходства от производителя продуктов для моего интернет-магазина. Этот формат:

product ID | price | name | ...

Каждую неделю производитель высылает мне обновленный список с новыми продуктами. Поэтому мне нужно знать, какие продукты являются новыми в этом списке. Итак, мне нужен фрагмент кода, который выполняет следующее:

  • Я вставлю старый список продуктов в лист1 (вручную)
  • Я вставлю новый список продуктов в sheet2 (вручную)
  • Сравните идентификаторы продуктов Sheet1 и Sheet2
  • Вставьте продукты (строки) из нового списка (Лист2) в Лист3, которых нет в старом списке (Лист1)

Таким образом, результатом в Sheet3 будут все новые продукты. Я надеюсь, что вы можете подтолкнуть меня в правильном направлении.

С уважением

3 ответа3

0

Я думаю, что вам может понадобиться что-то вроде этого:
=VLOOKUP(Sheet1!A1:A100,Sheet2!A1:F100,6,FALSE)

источник: https://stackoverflow.com/questions/15396677/excel-compare-two-cell-from-different-sheet-if-true-copy-value-from-other-cell

Конечно, вы также можете решить эту проблему, используя VBA с кнопками и всякие модные вещи.

0

На самом деле, я бы сделал это совсем иначе, используя надстройку PowerQuery от Microsoft, но я не знаю, насколько хорошо она работает в Excel 2010 (она не будет работать в Excel 2007). При этом вы можете добавлять запросы с группировкой по вашему идентификатору продукта, чтобы получить уникальный список.

Другой способ сделать это - сохранить листы в разных файлах и использовать инструмент запросов Excel, чтобы выполнить запрос объединения двух таблиц в новую таблицу.

В любом случае, получив новую таблицу, вы сохраняете ее в готовности к следующему слиянию.

0

В Sheet2 (обновленный элемент) добавьте столбец D, который проверяет, является ли продукт новым:

=MATCH(A2,Sheet1!$A:$A,0)>0

Добавьте столбец E, который дает TRUE значениям в столбце D уникальный идентификатор

=D5&COUNTIF(D$2:D2)

Теперь перейдите к Sheet3 (новые элементы) и поместите столбец индекса, скажем, в столбец E со значениями TRUE1 , TRUE2 , TRUE3 и т.д. , Столько , сколько , как вы думаете, вам когда-либо понадобится (например, если однажды будет 20 новых предметов, и вы поднялись только до TRUE15 , тогда вы пропустите 5 предметов).

Затем вы можете ввести новые предметы с:

=INDEX(Sheet2!A:A,MATCH($E2,Sheet2!$E:$E,0))

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