Коротко о главном
ПРОСМОТРX помогает найти SKU в справочнике и вернуть значение из той же строки. Но точное совпадение кода не подтверждает уникальность: функция может вернуть первую из нескольких записей. Перед подстановкой проверьте число соответствий, а ненайденные товары оставьте с явным статусом. Ниже — небольшой проверяемый пример для Excel с поддержкой этой функции.
- Найденное значение не доказывает, что в справочнике только одна подходящая запись.
- Отсутствие соответствия нельзя подменять нулевой ценой.
- Контрольный набор должен включать найденный SKU, повтор, пропуск и пустой ключ.
1. Определите, что именно ищете
Предположим, менеджеру нужно добавить плановую закупочную цену к списку товаров одного магазина. В справочнике должна быть одна действующая цена за штуку для каждого варианта. Это условие нашего учебного расчёта, а не универсальный формат отчёта маркетплейса. Сначала запишите период, валюту и единицу товара.
Если один код встречается в двух кабинетах, принадлежит разным размерам или имеет несколько цен по партиям, поиска только по SKU недостаточно. Подготовьте однозначный справочник для нужного контекста. Нельзя брать первую строку только потому, что Excel вернул число без ошибки. Цена упаковки вместо цены штуки тоже останется неверной при технически точном совпадении.
2. Проверьте версию и границы формулы
Microsoft указывает, что ПРОСМОТРX недоступна в Excel 2016 и Excel 2019. Для примера нужна версия с поддержкой функции, например Microsoft 365 или Excel 2021. Если коллега должен продолжить расчёт, заранее проверьте совместимость его версии, а не только своего файла.
Ниже приведены формулы с английскими именами XLOOKUP и COUNTIF и запятыми между аргументами. В русской локализации это ПРОСМОТРX и СЧЁТЕСЛИ; разделитель аргументов зависит от настроек. Выбирайте функцию через подсказку Excel, чтобы случайная похожая буква в имени не превратилась в ошибку. Все ссылки примера относятся к одному листу.
3. Подготовьте справочник с намеренной ошибкой
Разместите заголовки «SKU» и «Плановая цена, ₽/шт.» в A1:B1, а четыре записи таблицы — в A2:B5. Коды здесь текстовые: заглавные латинские буквы, дефис и цифры, без пробелов и специальных символов. Исходные строки сохраняйте: пока не решено, какая цена B-20 действующая, удаление одной записи было бы догадкой.
В D1 задайте заголовок «Искомый SKU». В D2 введите A-10, в D3 — B-20, в D4 — D-40, а D5 оставьте действительно пустой. Так проверка охватит обычный поиск, неоднозначность, отсутствие товара и незавершённый ввод. Не добавляйте этот набор в рабочую выгрузку: используйте отдельный учебный лист.
| Строка | A: SKU | B: цена, ₽/шт. |
|---|---|---|
| 2 | A-10 | 120 |
| 3 | B-20 | 250 |
| 4 | B-20 | 270 |
| 5 | C-30 | 180 |
4. Посчитайте совпадения до подстановки
В E1 напишите «Совпадений». В E2 введите =IF(D2="","ПУСТОЙ КЛЮЧ",COUNTIF($A$2:$A$5,D2)) и скопируйте до E5. Для заданных искомых кодов ожидаются 1, 2, 0 и «ПУСТОЙ КЛЮЧ». Знаки доллара удерживают справочник при копировании, а D2 меняется на текущую строку.
COUNTIF подсчитывает ячейки по условию. Для нашего ограниченного алфавита критерий из D2 подходит. Но функция не различает регистр и воспринимает * и ? как подстановочные знаки; Microsoft описывает ~ для их буквального поиска. Если ваши реальные коды содержат такие знаки или различаются только регистром, эту схему нельзя переносить без отдельной проверки правил сравнения.
Ноль совпадений и пустой ключ — разные ситуации. В первом случае код есть в запросе, но отсутствует в выбранном справочнике; во втором искать ещё нечего. Для двух совпадений надо проверить источник, дату действия и единицу цены. Даже две одинаковые суммы не дают основания автоматически считать одну запись лишней.
5. Возвращайте цену только после проверки
Для знакомства с поиском введите на свободном месте =XLOOKUP(D2,$A$2:$A$5,$B$2:$B$5,"НЕ НАЙДЕНО",0). Пятый аргумент 0 явно задаёт точное совпадение. Оно и так используется по умолчанию, но явная запись помогает проверяющему понять намерение. При обычном направлении поиска возвращается первое найденное соответствие.
Поэтому один XLOOKUP для B-20 вернул бы 250, скрыв вторую цену 270. Чтобы не принимать такой результат, в F2 используйте =IF(D2="","ПУСТОЙ КЛЮЧ",IF(E2=0,"НЕ НАЙДЕНО",IF(E2>1,"ДУБЛЬ",XLOOKUP(D2,$A$2:$A$5,$B$2:$B$5,"НЕ НАЙДЕНО",0)))). Скопируйте до F5. Ожидаются 120, «ДУБЛЬ», «НЕ НАЙДЕНО» и «ПУСТОЙ КЛЮЧ».
Формула намеренно не подменяет исключения нулями. Если дальше нужно считать бюджет, сначала разберите все текстовые статусы и проверьте заполненность самих цен в справочнике. Наличие одной найденной строки не означает, что её цена заполнена и подходит для расчёта.
6. Проверьте исправление и следующее обновление
Допустим, владелец справочника подтвердил, что строка B-20 с ценой 270 ошибочно попала в текущий набор. После исправления источника и обновления диапазонов для B-20 ожидаются одно совпадение и 250. Для D-40 статус отсутствия остаётся, пока не появится подтверждённая запись. Не исправляйте оба исключения одной массовой заменой.
Наши ссылки заканчиваются строкой 5. Если справочник вырос, расширьте диапазоны во всех формулах одновременно и повторите контрольный набор. Диапазоны поиска и возврата должны описывать одни и те же строки. Проверка только первой удачной подстановки не обнаружит забытые записи внизу файла.
Сохраните исходник, версию справочника и список исключений. Перед расчётом закупки сравните подставленные значения с подтверждёнными данными, а после изменения справочника повторите проверку. Для дальнейшего разбора показателей кабинета можно использовать «Внутреннюю аналитику WB и Ozon» HelpStat; сопоставление в этой инструкции выполняется в Excel.
Источники и методика
Источники ниже помогают проверить определения и возможности отчётов. Методика разбора и учебные расчёты подготовлены редакцией HelpStat. Доступность отчётов и условия работы проверяйте в своём кабинете. Расчётные примеры в статье — учебные, а не результаты клиентов.



