Таблица без линий распозналась сплошным текстом
Как это выглядит
В документе визуально таблица: наименование, количество, цена. Но линий между колонками нет — они разделены пробелами. В выгрузке всё склеилось в одну колонку.
Коротко
Границы колонок распознавание определяет по линиям и по выравниванию текста. Если линий нет, а колонки узкие или значения разной длины, границы приходится угадывать — и на каждой странице они могут получиться разными.
Почему так происходит
01Колонки разделены только пробелами
Такие таблицы получаются при печати из простых программ и при экспорте в текст. Визуально они выровнены, но структуры в файле нет — есть только строки символов.
02Длинное наименование заходит на соседнюю колонку
Если текст в первой колонке длиннее её ширины, он визуально смыкается со второй. Граница между ними перестаёт быть заметной даже человеку.
03Числа выровнены по-разному
Часть значений по левому краю, часть по правому. Выравнивание перестаёт быть подсказкой о том, где заканчивается колонка.
04Строка занимает две строки текста
Наименование переносится, и вторая строка выглядит как отдельная позиция с пустыми числовыми колонками.
Как понять, что причина именно эта
- Посмотрите на исходник: есть ли линии между колонками
- Проверьте, все ли строки в выгрузке имеют одинаковое число заполненных полей
- Найдите строки, где заполнена только первая колонка — это перенесённые наименования
- Сравните число строк с числом позиций в документе
Как починить
Разобрать документ вручную под шаблон
- 1.Определите границы колонок по позиции символов
- 2.Задайте их явно для этого поставщика
- 3.Проверьте результат на нескольких документах
не чинит: Шаблон привязан к конкретной печатной форме. Изменение ширины колонок у поставщика ломает его.
Разделить текст формулой
- 1.Выгрузите строки как есть в одну колонку
- 2.Разделите по нескольким пробелам подряд
- 3.Соберите перенесённые наименования обратно
не чинит: Ломается на значениях с пробелами внутри: «ООО Северный Ветер» разъедется на три колонки.
Запросить машиночитаемый формат
- 1.Попросите поставщика прислать Excel или CSV
- 2.Если он выгружает из учётной системы, такой вариант обычно есть
не чинит: Зависит от поставщика; часть печатных форм существует только в виде текста.
Когда мы не нужны
Если у документа есть машиночитаемый источник — просите его. Распознавание таблицы без границ всегда даёт больше ошибок, чем разбор нормальной выгрузки, и это не тот случай, где стоит геройствовать.
Что с этим делает наша выгрузка
Мы определяем колонки по выравниванию и помечаем строки, где структура не совпала с остальными. Первый документ от такого поставщика разбираем вручную и настраиваем границы — дальше документы той же формы разбираются по настроенному шаблону.
Вопросы
Почему на одной странице разобралось, а на другой нет?
Потому что границы угадываются по содержимому страницы. Длинное наименование на второй странице смыкает колонки, и та же таблица получает другую разметку. Это признак того, что нужен явный шаблон.
Помогут ли линии, если попросить поставщика их добавить?
Да, заметно. Таблица с границами разбирается устойчивее любой другой — линии дают однозначные границы колонок вместо догадок по пробелам.
Если ошибка не в Excel, а в самих документах
Пилот на 30 дней: пришлите самый неудобный счёт, разберём вручную под ваш формат и вернём готовую таблицу.
Первый счёт разбираем вручную под ваш формат. Списание разовое, автопродления нет. Источник перехода: seo/oshibki/tablica-bez-liniy-sploshnym-tekstom.
Другие ошибки