Номера с буквенным префиксом сортируются неправильно
Как это выглядит
Отсортировали реестр по номеру документа — и порядок получился странный: СЧ-1, СЧ-10, СЧ-100, СЧ-2. Найти нужный документ в таком списке невозможно.
Коротко
Номер с буквами — текст, а текст сортируется посимвольно: «1» идёт раньше «2», поэтому «10» оказывается раньше «2». Это не ошибка таблицы, а нормальное поведение текстовой сортировки; лечится вынесением числовой части в отдельную колонку.
Почему так происходит
01Текстовая сортировка сравнивает посимвольно
Строки сравниваются слева направо по кодам символов. «СЧ-10» и «СЧ-2» совпадают до третьего знака, а дальше «1» меньше «2» — значит, вся строка меньше.
02Номера без ведущих нулей
Если бы номера писались как СЧ-002 и СЧ-010, текстовая сортировка совпала бы с числовой. Проблема появляется именно у номеров переменной длины.
03Разные префиксы у одного поставщика
Часть документов пронумерована СЧ-, часть С-, часть без префикса. Сортировка разложит их тремя группами, и хронология развалится внутри каждой.
Как понять, что причина именно эта
- Отсортируйте по номеру и посмотрите, идут ли рядом номера с одинаковым числом знаков
- Проверьте, одинаков ли префикс у всех строк
- Сравните порядок с сортировкой по дате: расхождение подтверждает диагноз
Как починить
Вынести числовую часть в отдельную колонку
- 1.Добавьте колонку и извлеките в неё цифры из номера
- 2.Приведите её к числовому типу
- 3.Сортируйте по префиксу, затем по числовой колонке
не чинит: Требует, чтобы формат номера был единым. Если у поставщиков разные схемы, извлечение придётся настраивать под каждого.
Сортировать по дате, а не по номеру
- 1.Используйте дату документа как основной ключ
- 2.Номер оставьте для поиска, а не для порядка
не чинит: Не работает, если в один день несколько документов и нужен их внутренний порядок.
Договориться о ведущих нулях
- 1.Попросите поставщика нумеровать с фиксированной длиной: СЧ-0001
- 2.В своей нумерации сделайте так же
не чинит: Влияет только на будущие документы; архив останется отсортированным по-старому.
Когда мы не нужны
Это задача таблицы, а не распознавания: если документы у вас уже в Excel, разбирать нечего — достаточно добавить колонку с числовой частью.
Что с этим делает наша выгрузка
Мы переносим номер строкой целиком, с префиксом и ведущими нулями, и не разбиваем его на части. Разбиение — это правила, которые у каждого поставщика свои, а сохранённый как есть номер всегда можно разделить формулой на вашей стороне.
Вопросы
Почему бы вам не вынести число из номера сразу?
Потому что схем нумерации много: СЧ-10/2026, 10-СЧ, 2026/10. Разобрать их одним правилом нельзя, а неверное разбиение хуже отсутствующего — оно выглядит правильным.
Ведущие нули в номере сохранятся?
Да, номер выгружается текстом. Именно поэтому СЧ-0001 не превратится в СЧ-1 — потеря нулей ломает и сортировку, и поиск.
Если ошибка не в Excel, а в самих документах
Пилот на 30 дней: пришлите самый неудобный счёт, разберём вручную под ваш формат и вернём готовую таблицу.
Первый счёт разбираем вручную под ваш формат. Списание разовое, автопродления нет. Источник перехода: seo/oshibki/bukvennyi-prefiks-slomal-sortirovku.
Другие ошибки