Все статьи
25 апреля 2026 г.6 мин

Почему ВПР в Excel ломается на прайсах поставщиков и что делать

Если ты хоть раз сводил прайсы трёх поставщиков через ВПР, ты знаешь это чувство: формула протянулась, а половина строк показывает #Н/Д. Не потому что товара нет - потому что ключи не совпали по символу. Разберём, почему так выходит и как из этого выкрутиться.

1. Артикулы пишутся по-разному

У одного поставщика «4607099-001», у второго «4607099/001», у третьего «4607099 001». Это один и тот же товар, но для ВПР это три разные строки. Дальше веселее: где-то ведущие нули обрезаны, где-то стоит лишний пробел в конце ячейки, где-то скрытые символы из выгрузки 1С.

2. EAN есть, но не у всех

Штрихкод EAN-13 - самый надёжный ключ. Если он есть, всё сходится точно. Проблема в том, что у поставщика-перекупа EAN часто нет, или есть в одной строке из десяти.

3. Названия отличаются по словам

«Молоко Простоквашино 2,5% 950 мл» и «Молоко Простоквашино 950мл 2.5%». Тот же товар, ВПР по названию - мимо.

4. Шапка прайса не там, где ожидает формула

Поставщик добавил две строки «Уважаемые партнёры…» сверху, и колонка «Цена», на которую ты тащишь ВПР по индексу 5, теперь индекс 7. Все формулы внезапно врут, но ошибки не выдают - данные просто берутся из соседней колонки.

5. Файл в Windows-1251

CSV из 1С приходит в Windows-1251. Excel при импорте может показать кириллицу кракозябрами, и матчинг по названию станет сравнивать «Òîâàð» с «Товар». Мимо.

Что делать

  1. Матчить по EAN, артикулу и нормализованному названию каскадно. Если EAN есть с обеих сторон - берём его. Нет - пробуем артикул без всяких разделителей и с ведущими нулями. Нет - fuzzy-сравнение по названию (RapidFuzz справляется на 85% даже с переставленными словами).
  2. Определять колонки по содержимому, не по шапке. EAN-13 распознаётся регуляркой /^\d{13}$/, цена - float в разумном диапазоне, артикул - alphanum с цифрами. Это надёжнее чем «5-я колонка слева».
  3. Хранить историю. Поставщик дал прайс в понедельник и в пятницу. Без истории ты увидишь только текущие цены - не увидишь, что Вася поднял 15 позиций на 5%. Это потерянная маржа.

Решение в Praiser

В Praiser мы делаем всё это за тебя. Ты грузишь свой прайс и прайсы поставщиков, мы парсим автоматически (включая Windows-1251 и сдвинутые шапки), матчим по каскаду EAN → артикул → fuzzy, показываем таблицу: твоя цена → цены поставщиков → минимум → маржа. Если хочешь просто сравнить два файла без регистрации - есть бесплатный инструмент сравнения.