Как объединить несколько прайсов Excel в один файл

Понедельник, на почте три свежих прайса: у первого поставщика колонки «Артикул», «Наименование», «Цена опт», у второго — «SKU», «Product», «RRP» и шапка в две строки, третий прислал вообще CSV. А к вечеру нужен один общий файл на четыре тысячи строк — для загрузки на маркетплейс, в 1С или для рассылки дилерам. Первый порыв — открыть все три файла и копировать листы друг под друга. Разберём, почему это ломается, и схему, в которой объединение занимает минуты, а не часы ручной сборки.

Почему «скопировать и вставить» ломается

  • Разный порядок колонок. Даже при одинаковых названиях «Цена» у одного поставщика третья, у другого пятая. Вставили строки под чужую шапку — и цены оказались в колонке остатков.
  • Разные шапки. «Наименование» против «Product Name»: после вставки в файле живут две системы имён, и каждая загрузка превращается в гадание, где что лежит.
  • Разная высота шапки. У одного заголовок в первой строке, у другого шапка на три строки с объединёнными ячейками — данные начинаются с разных строк, и копировать приходится «на глазок».
  • Дубли. Один и тот же артикул встречается в двух прайсах и попадает в итоговый файл дважды — а площадка при загрузке отвечает ошибкой.
  • Мусор. Строки-разделы каталога, «Итого» внизу листа, пустые строки — всё это переезжает в общий файл вместе с данными.

Итог классической копипасты предсказуем: первые восемьсот строк ещё держатся, а дальше цены в остатках, артикулы съехали, и половина ошибок всплывёт только при загрузке — когда исправлять уже поздно.

Шаг 1. Привести каждый файл к единому виду

Рабочая идея — не объединять сразу, а сначала сделать из каждого прайса таблицу с одним и тем же набором колонок в одном и том же порядке. Например: «Артикул», «Наименование», «Бренд», «Цена», «Остаток». После этого объединение становится безопасным копированием строк под общую шапку.

В конвертере прайсов приведение делается за один проход по шагам. На шаге «Структура» указываете, с какой строки начинается таблица, схлопываете многострочную шапку, убираете строки-разделы. На шаге «Колонки» переименовываете колонки в единый набор, переставляете их в нужный порядок, удаляете лишние. В «Фильтрах» отсекаете лишние строки: «остаток больше 0», «не содержит Итого».

Главное — настройки сохраняются в шаблон (после регистрации). На следующей неделе цикл короткий: свежий прайс того же поставщика → применить шаблон → скачать готовый фрагмент. Если у поставщиков разные валюты и наценки, добавьте в шаблон действие «Умножить» на колонке цены — этот сценарий подробно разобран в статье про работу с несколькими поставщиками.

Шаг «Колонки»: приведение прайса к единому набору колонок в нужном порядке
Каждый файл приводится к одному набору колонок в одном порядке — после этого прайсы складываются без сюрпризов

Шаг 2. Объединить файлы в один

После конвертации у вас несколько XLSX с идентичной структурой. Открываете первый файл — он становится основой — и вставляете вниз строки из остальных. Два правила, которые спасают от классических ошибок:

  1. Вставляйте данные без шапки. Выделяйте строки со второй (сразу после заголовка) до конца таблицы, иначе чужая шапка встанет посреди данных и уедет в загрузку как товар.
  2. Считайте строки. Перед объединением запишите число строк с данными в каждом файле, после — сверьте сумму с итогом. Не сошлось на десяток строк — где-то зацепили шапку или потеряли хвост таблицы.

При десятках тысяч строк Excel на больших вставках начинает подтормаживать, и незаметно потерять кусок таблицы проще, чем кажется. Тогда надёжнее собирать файл частями: объединили два прайса — сохранили, добавили третий — снова сохранили, каждый раз сверяя счётчик строк.

Объединённый файл: строки трёх прайсов под одной общей шапкой
Три прайса — одна таблица: вставляются только строки с данными, без чужих шапок

Шаг 3. Дедупликация по артикулу

В объединённом файле повторы почти гарантированы: один товар от двух поставщиков, дубль внутри одного прайса. Решается штатным инструментом: «Данные → Удалить дубликаты», галочка только на колонке артикула. Тонкости — какую из двух строк оставить и что делать, когда артикулы разных поставщиков совпадают, — разобраны в статье про удаление дубликатов в Excel.

Одно правило стоит решить заранее: при повторе артикула какая строка должна остаться — с меньшей ценой, с ненулевым остатком, от основного поставщика? Excel оставляет первое вхождение, поэтому перед дедупликацией отсортируйте файл по нужной колонке — и «первой» окажется именно та строка, что нужна.

Финальная проверка перед загрузкой

  • Число строк. Сумма строк исходников минус удалённые дубли должна сойтись с итогом. Расхождение — повод искать, где потеряли.
  • Дубли артикулов. Контрольный заход после дедупликации: выделить колонку артикулов, «Условное форматирование → Правила выделения ячеек → Повторяющиеся значения». Подсветки быть не должно.
  • Типы данных. Артикулы с ведущими нулями — текстом, цены и остатки — числами. Если в колонке цены встречается «1 290,00 ₽» строкой, загрузка на площадку упадёт на первой же такой строке.
  • Формат на выходе. Если принимающая система ждёт CSV, не полагайтесь на «Сохранить как» в Excel, а прогоните итог через конвертер: на выходе будет UTF-8 с точкой с запятой. Подводные камни пары форматов — в статье про конвертацию CSV в XLSX и обратно.
Контрольная проверка итогового файла на повторяющиеся артикулы
Финальный контроль: счёт строк сошёлся, повторов артикулов нет

На всё про всё — приведение трёх файлов, объединение, дедупликация и проверка — уходит минут пятнадцать против вечера ручной сборки. И главный выигрыш не в скорости, а в предсказуемости: файл, собранный по схеме, площадка принимает с первого раза.

Частые вопросы

Можно ли объединить файлы с разным набором колонок?

Напрямую — нет: сначала приведите каждый файл к единому виду, иначе данные встанут под чужие шапки. В конвертере это делается на шаге «Колонки»: переименовать, переставить, удалить лишнее — и сохранить настройки шаблоном, чтобы не повторять настройку каждую неделю.

Как объединить листы внутри одного файла Excel?

Та же схема: проверьте, что на всех листах одинаковые колонки в одном порядке, скопируйте строки с данными (без шапок) на один лист и удалите дубли по артикулу. Если структура листов разная, сначала приведите каждый к общему виду — иначе значения встанут не в те колонки.

Что делать с повторами артикулов после объединения?

«Данные → Удалить дубликаты» с галочкой только на колонке артикула. Заранее решите, какая строка должна остаться — например, с меньшей ценой или с ненулевым остатком — и отсортируйте файл так, чтобы она шла первой: Excel сохраняет первое вхождение.

Прайс поставщика больше 2 МБ — конвертер его не берёт?

Бесплатно и без регистрации обрабатываются файлы до 2 МБ — это примерно тысяча строк прайса. После регистрации — до 5 МБ и 10 000 строк, плюс сохранённые шаблоны. Если прайсы крупнее, есть платные тарифы от 590 ₽/мес с обработкой больших файлов.