Почему подсчёт SKU в Excel — это не так просто, как кажется
На первый взгляд, посчитать количество уникальных артикулов (SKU) в таблице — задача для школьника: достаточно выделить столбец и посмотреть количество строк. Но на практике всё сложнее. SKU могут дублироваться в разных строках (например, один и тот же товар в разных заказах), содержать лишние символы (пробелы, тире, регистр), или вообще быть разбросаны по нескольким листам. А если нужно посчитать не просто количество уникальных SKU, а, скажем, сколько из них отсутствует на складе или какие встречаются только в одном заказе — тут уже требуются продвинутые приёмы.
В этой статье разберём 5 рабочих способов подсчёта SKU в Excel и Google Таблицах — от элементарных до автоматизированных. Вы узнаете:
- 🔹 Как убрать дубликаты SKU за 2 клика (даже если артикулы записаны по-разному).
- 🔹 Формулы для подсчёта уникальных SKU с учётом дополнительных условий (например, только для определённого поставщика).
- 🔹 Как визуализировать распределение SKU по категориям с помощью сводных таблиц.
- 🔹 Лайфхаки для работы с большими базами (100 000+ строк) без зависаний.
Все примеры приведены для Excel 2019–2023 и Microsoft 365, но majority методов работают и в старых версиях (2010–2016) с небольшими поправками. Для Google Таблиц укажем отдельные нюансы.
Способ 1: Удаление дубликатов — самый быстрый метод для "чистых" данных
Если ваша таблица содержит только SKU (без дополнительных столбцов) и все артикулы записаны одинаково (нет различий в регистре, пробелах или формате), то проще всего воспользоваться встроенной функцией Удалить дубликаты.
Пошаговая инструкция:
- Выделите столбец с SKU (включая заголовок).
- Перейдите на вкладку
Данные→Удалить дубликаты. - Убедитесь, что галочка стоит только напротив вашего столбца (например,
Столбец A). - Нажмите
OK.
Excel автоматически оставит только уникальные значения и покажет сообщение вида: "Найдено 123 уникальных значений из 500 исходных". Это и есть количество SKU.
Убедиться, что в столбце нет пустых ячеек|
Проверить единообразие формата (например, все SKU в верхнем регистре)|
Создать копию исходных данных (на случай ошибки)|
Удалить лишние символы (пробелы, тире) с помощью функции СЖПРОБЕЛЫ
-->
⚠️ Внимание: Этот метод не работает, если SKU записаны по-разному. Например,ABC-123,abc-123иABC123Excel воспримет как три разных значения. Для таких случаев читайте Способ 3.
Способ 2: Функция ЧСТРОК + УНИК (Excel 365 и 2021)
Если вы используете Microsoft 365 или Excel 2021, то у вас есть доступ к динамическим массивам и функции УНИК (UNIQUE). Это самый современный и гибкий способ подсчёта уникальных SKU.
Формула для подсчёта:
=ЧСТРОК(УНИК(A2:A1000))
Где A2:A1000 — диапазон с SKU.
Как это работает:
УНИК(A2:A1000)— возвращает список всех уникальных значений из диапазона.ЧСТРОК— считает количество строк в полученном списке.
Преимущества метода:
- 🔹 Работает даже если SKU записаны в разных регистрах (приведёт к единому формату).
- 🔹 Автоматически обновляется при изменении исходных данных.
- 🔹 Можно добавлять дополнительные условия (например, посчитать SKU только для определённого поставщика).
Пример с условием (только SKU, где в столбце B указан поставщик "ООО Ромашка"):
=ЧСТРОК(УНИК(ФИЛЬТР(A2:A1000; B2:B1000="ООО Ромашка")))
Что делать, если функция УНИК не работает?
Если у вас Excel 2019 или старше, функции УНИК и ФИЛЬТР недоступны. В этом случае используйте комбинацию ИНДЕКС + ПОИСКПОЗ (см. Способ 4) или обновите Excel до актуальной версии.
Способ 3: Подсчёт SKU с учётом разных форматов записи (регистр, пробелы, символы)
Одна из самых распространённых проблем — когда один и тот же SKU записан по-разному. Например:
IPHONE-13-PRO-256iPhone 13 Pro 256GBIPHONE13PRO256
Для Excel это три разных значения, хотя по сути это один и тот же товар. Чтобы привести всё к единому формату, используйте промежуточный столбец с очисткой данных.
Шаги:
- Добавьте новый столбец (например,
Столбец C) с формулой:=СЖПРОБЕЛЫ(ПРОПНАЧ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;"-";"");" ";"")))Эта формула:
- Удаляет все пробелы и тире (
ПОДСТАВИТЬ). - Приводит текст к верхнему регистру (
ПРОПНАЧ). - Убирает лишние пробелы (
СЖПРОБЕЛЫ).
- Удаляет все пробелы и тире (
Удалить дубликаты (Способ 1) или ЧСТРОК(УНИК()) (Способ 2) для очищенного столбца.Для Google Таблиц формула будет аналогичной, но вместо СЖПРОБЕЛЫ используйте TRIM:
=TRIM(UPPER(SUBSTITUTE(SUBSTITUTE(A2;"-";"");" ";"")))
=СЖПРОБЕЛЫ(ПРОПНАЧ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;"-";"");" ";"");"/";"");"\";"")))
-->
Способ 4: Формула массива для старых версий Excel (2010–2016)
Если у вас Excel 2010–2016, где нет функции УНИК, используйте формулу массива на основе ИНДЕКС, ПОИСКПОЗ и СЧЁТЕСЛИ.
Формула для подсчёта уникальных значений в диапазоне A2:A1000:
=СУММ(--(ЧАСТОТА(ПОИСКПОЗ(A2:A1000;A2:A1000;0);ПОИСКПОЗ(A2:A1000;A2:A1000;0))>0))
Важно! После ввода формулы нажмите Ctrl+Shift+Enter (вместо обычного Enter), чтобы активировать режим массива. В ячейке появятся фигурные скобки {}.
Как это работает:
ПОИСКПОЗ(A2:A1000;A2:A1000;0)— возвращает позиции каждого элемента в самом себе (для уникальных значений позиции совпадают).ЧАСТОТА— подсчитывает, сколько раз каждое значение встречается в массиве позиций.СУММ(--(ЧАСТОТА>0))— суммирует количество уникальных значений (где частота > 0).
Для больших диапазонов (более 10 000 строк) эта формула может тормозить. В таком случае лучше использовать сводную таблицу (Способ 5).
⚠️ Внимание: Формулы массива не работают в Google Таблицах. Для них используйте комбинацию =COUNTA(UNIQUE(A2:A1000)).
Способ 5: Сводная таблица — для анализа SKU по категориям
Если вам нужно не просто посчитать количество SKU, а проанализировать их распределение (например, по категориям, поставщикам или остаткам на складе), сводная таблица — идеальный инструмент.
Пошаговая инструкция:
- Выделите исходную таблицу (включая заголовки).
- Перейдите на вкладку
Вставка→Сводная таблица. - В поле
Строкиперетащите столбец с SKU. - В поле
Значенияперетащите тот же столбец (Excel автоматически посчитает количество уникальных значений). - (Опционально) Добавьте дополнительные поля в
СтрокиилиФильтры(например,КатегорияилиПоставщик). - 🔹 Мгновенный подсчёт уникальных SKU с группировкой по любым критериям.
- 🔹 Возможность фильтрации (например, показать только SKU с остатком < 10 штук).
- 🔹 Автоматическое обновление при изменении исходных данных.
- 🔹 Экспорт результатов в отдельный лист или файл.
Пример результата:
| Категория | SKU | Количество уникальных |
|---|---|---|
| Смартфоны | IPHONE-13-PRO-128 | 15 |
| Смартфоны | SAMSUNG-GALAXY-S22 | 8 |
| Ноутбуки | MACBOOK-AIR-M1 | 5 |
| Ноутбуки | LENOVO-THINKPAD-X1 | 3 |
| Итог | 31 |
Преимущества сводных таблиц:
Бонус: Автоматизация подсчёта SKU с помощью Power Query
Если вы регулярно работаете с большими базами SKU (например, еженедельно получаете выгрузки от поставщиков), то ручной подсчёт станет утомительным. В этом случае поможет Power Query — инструмент для автоматизации обработки данных.
Алгоритм действий:
- Выделите исходную таблицу и перейдите на вкладку
Данные→Из таблицы/диапазона(в группеПолучить и преобразовать данные). - В открывшемся редакторе Power Query выберите столбец с SKU →
Преобразовать→Очистить→Заменить значения(удалите лишние символы). - Выделите столбец с SKU →
Главная→Группировка→ выберитеСуммаилиКоличество значений. - Нажмите
Закрыть и загрузить— результат появится на новом листе.
Преимущества Power Query:
- 🔹 Один раз настроил — потом только обновляешь данные кнопкой
Обновить все. - 🔹 Можно объединять данные из нескольких файлов (например, выгрузки от разных поставщиков).
- 🔹 Поддерживает сложные преобразования (разделение столбцов, замена текста по шаблону и т. д.).
Пример кода на языке M (для продвинутых пользователей), который очищает SKU и считает уникальные значения:
let
Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
ОчисткаSKU = Table.TransformColumns(Источник,{{"SKU", each Text.Upper(Text.Replace(Text.Replace(_, "-", ""), " ", "")), type text}}),
УникальныеSKU = Table.Group(ОчисткаSKU, {"SKU"}, {{"Количество", each Table.RowCount(_), type number}})
in
УникальныеSKU
Частые ошибки и как их избежать
Даже опытные пользователи Excel иногда допускают ошибки при подсчёте SKU. Вот самые распространённые из них и способы их решения:
- Ошибка 1: SKU с ведущими нулями (например,
0012345) отображаются как12345.Решение: Преобразуйте столбец в текстовый формат (
Формат ячеек→Текстовый) или добавьте апостроф перед числом:'0012345. - Ошибка 2: Формула
ЧСТРОК(УНИК())возвращает неверное значение из-за скрытых символов (например, неразрывный пробел).Решение: Используйте функцию
ПЕЧСИМВ(CLEAN) для удаления непечатаемых символов:=ЧСТРОК(УНИК(ПЕЧСИМВ(A2:A1000))) - Ошибка 3: Сводная таблица не обновляется после изменения исходных данных.
Решение: Нажмите правой кнопкой по сводной таблице →
Обновитьили настройте автоматическое обновление (Параметры сводной таблицы→Данные→Обновлять при открытии файла).
Если вы работаете с 1C или другими системами учёта, обратите внимание на формат экспорта SKU. Часто артикулы экспортируются с лишними символами (например, #12345# или [ABC-678]). В таком случае используйте ПОДСТАВИТЬ для очистки:
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;"#";"");"[";"")
FAQ: Ответы на частые вопросы
Можно ли посчитать SKU в Excel Online?
Да, но с ограничениями. В Excel Online доступны функции УНИК и ЧСТРОК, но нет Power Query и некоторых инструментов для работы с большими файлами. Для подсчёта SKU используйте:
=COUNTA(UNIQUE(A2:A1000))
Если нужно очистить данные от лишних символов, применяйте TRIM, UPPER и SUBSTITUTE (аналогично Google Таблицам).
Как посчитать SKU, которые встречаются только один раз?
Используйте комбинацию СЧЁТЕСЛИ и УНИК (для Excel 365):
=СУММ(--(СЧЁТЕСЛИ(A2:A1000;УНИК(A2:A1000))=1))
Для старых версий Excel:
=СУММПРОИЗВ(--(ЧАСТОТА(ПОИСКПОЗ(A2:A1000;A2:A1000;0);ПОИСКПОЗ(A2:A1000;A2:A1000;0))=1))
Не забудьте ввести формулу как массив (Ctrl+Shift+Enter).
Как экспортировать список уникальных SKU в отдельный файл?
Самый простой способ:
- Создайте новый столбец с формулой
=УНИК(A2:A1000)(Excel 365). - Скопируйте полученные значения и вставьте их на новый лист (
Специальная вставка→Значения). - Сохраните лист как отдельный файл (
Файл→Сохранить как→CSVилиExcel).
Для старых версий Excel:
- Используйте сводную таблицу (Способ 5) для получения списка уникальных SKU.
- Скопируйте данные из сводной таблицы в новый лист.
Почему функция УНИК не работает с русскими буквами?
Функция УНИК корректно обрабатывает русские символы, но проблема может быть в:
- 🔹 Кодировке файла: если данные импортированы из CSV с неправильной кодировкой (например,
Windows-1251вместоUTF-8), русские буквы могут отображаться как кракозябры. ИспользуйтеPower Queryдля исправления кодировки. - 🔹 Регистре: если SKU отличаются только регистром (например,
АРТИКУЛ1иартикул1), приведите всё к единому регистру с помощьюПРОПНАЧ. - 🔹 Скрытых символах: проверьте ячейки на наличие непечатаемых символов функцией
ПЕЧСИМВ.
Как посчитать SKU в Google Таблицах?
В Google Таблицах используйте аналогичные функции, но с другим синтаксисом:
- 🔹 Подсчёт уникальных SKU:
=COUNTA(UNIQUE(A2:A1000)) - 🔹 Очистка SKU от лишних символов:
=ARRAYFORMULA(TRIM(UPPER(SUBSTITUTE(SUBSTITUTE(A2:A1000;"-";"");" ";"")))) - 🔹 Подсчёт SKU с условием:
=COUNTA(FILTER(UNIQUE(A2:A1000); B2:B1000="Категория1"))
Для сводных таблиц перейдите в Данные → Сводная таблица.