К статье
Практический материал

Обучение и Решения · 9 мин

Как копировать из 1С без пробелов: рабочие способы

Почему при копировании из 1С в Excel числа вставляются с пробелами и как это исправить: настройки, формулы, макросы и обработка текста.

При копировании данных из 1С в Excel, блокнот или другую программу числа часто вставляются с пробелами: вместо 125000 получается «125 000». Это не обычный пробел, а неразрывный пробел (код символа 160) или узкий неразрывный пробел, который 1С подставляет как разделитель групп разрядов при форматировании чисел. Из-за этого Excel воспринимает значение как текст, формулы не считают, а сортировка работает неправильно.

Проблема решается несколькими способами: от настройки формата в самой 1С до очистки данных уже после вставки. Выбор зависит от того, кто вы — пользователь, который просто копирует отчёт, или разработчик, формирующий печатную форму. Ниже разобраны все рабочие варианты с точными действиями и их ограничениями.

Почему 1С вставляет пробелы в числа

По умолчанию в 1С для числовых полей включена группировка разрядов: тысячи отделяются от сотен для удобства чтения. На экране это выглядит аккуратно, но при копировании через буфер обмена символ-разделитель переносится вместе с цифрами. Важно понимать: это не «лишний символ-ошибка», а штатное поведение форматирования.

Разделитель может быть разным в зависимости от региональных настроек Windows и версии платформы. Чаще всего это неразрывный пробел (код 160), но встречается и узкий неразрывный пробел (код 8239). Именно поэтому обычная замена пробела через Ctrl+H иногда не срабатывает — вы ищете не тот символ.

Ещё один источник пробелов — текстовые поля, в которые числа выведены как строка. Например, в макетах печатных форм сумма может быть сформирована функцией с явным форматированием, и тогда разделитель «зашит» в текст.

Способ 1: копирование через табличный документ

Самый простой приём для пользователя — не копировать данные напрямую из формы, а сначала вывести их в табличный документ. Для отчётов это делается автоматически: сформируйте отчёт, выделите нужную область и скопируйте. Во многих конфигурациях при таком копировании числа передаются корректнее, чем из полей ввода.

Если копируете список документов или справочник, используйте команду «Вывести список» (кнопка «Ещё» → «Вывести список» в типовых конфигурациях на управляемых формах). В открывшемся табличном документе отметьте нужные колонки и скопируйте их. Вероятность «прилипания» неразрывных пробелов при этом ниже, хотя полностью не исключена.

Дополнительный вариант — сохранить табличный документ в формате Excel (Файл → Сохранить как → Лист Excel). При сохранении в xlsx числа часто записываются как числовые значения ячеек, а не как текст с разделителями, и проблема исчезает полностью.

Копирование через список
  1. 1
    Откройте список документов или справочника в 1С
  2. 2
    Нажмите «Ещё» → «Вывести список» и отметьте нужные колонки
  3. 3
    В табличном документе выделите область и нажмите Ctrl+C
  4. 4
    Вставьте в Excel и проверьте, распознались ли числа
  5. 5
    Если пробелы остались — очистите их способом из следующего раздела

Способ 2: очистка в Excel после вставки

Если данные уже вставлены с пробелами, быстрее всего убрать их инструментом «Найти и заменить». Нажмите Ctrl+H, в поле «Найти» вставьте неразрывный пробел, поле «Заменить на» оставьте пустым и нажмите «Заменить все».

Как ввести неразрывный пробел в поле поиска: скопируйте его прямо из ячейки с проблемным числом (выделите разделитель между разрядами в строке формул и скопируйте) либо введите с клавиатуры, удерживая Alt и набирая 0160 на цифровом блоке. Обычный пробел через клавишу «Пробел» не подойдёт — замена не найдёт совпадений.

После замены Excel может всё ещё считать значения текстом. Признак — зелёный треугольник в углу ячейки и выравнивание по левому краю. Чтобы преобразовать текст в числа, выделите диапазон, нажмите на значок ошибки и выберите «Преобразовать в число», либо умножьте диапазон на 1 через «Специальную вставку».

Способ 3: формулы Excel для устойчивой очистки

Когда данные обновляются регулярно (например, вы каждый день копируете отчёт), удобнее один раз построить формулу, которая чистит значения автоматически. Базовый вариант: =ПОДСТАВИТЬ(A1;СИМВОЛ(160);"") — удаляет неразрывный пробел.

Если встречаются оба типа разделителей, используйте вложенную подстановку: =ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;СИМВОЛ(160);"");СИМВОЛ(8239);""). Чтобы сразу получить число, оберните результат в ЗНАЧЕН: =ЗНАЧЕН(ПОДСТАВИТЬ(A1;СИМВОЛ(160);"")).

Учтите, что функция СЖПРОБЕЛЫ здесь помогает лишь частично: она удаляет обычные пробелы по краям и схлопывает повторные, но с неразрывными пробелами внутри числа не справляется. Комбинация СЖПРОБЕЛЫ с ПОДСТАВИТЬ закрывает большинство случаев.

excel
=ЗНАЧЕН(ПОДСТАВИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);СИМВОЛ(160);"");СИМВОЛ(8239);""))

Способ 4: настройка формата в 1С

Если у вас есть доступ к конфигуратору или вы разработчик, проблему правильнее решать на стороне 1С. В свойствах поля, реквизита или колонки есть параметр «Формат» — там можно отключить группировку разрядов. Для этого в строке формата укажите параметр ЧГ=0 (группировка отключена), например: ЧЦ=15; ЧДЦ=2; ЧГ=0.

В программном коде аналогичный результат даёт функция Формат: Формат(Сумма; "ЧЦ=15; ЧДЦ=2; ЧГ=0") вернёт число без разделителей разрядов. Этот приём применяют при формировании макетов печатных форм и файлов выгрузки, чтобы получатель получал «чистые» числа.

Для пользователя без доступа к конфигуратору есть косвенный путь: в настройках отчёта на СКД (кнопка «Настройки») у числовых полей иногда доступно оформление, где можно задать формат. Возможность зависит от конкретного отчёта — не везде она открыта.

Способ 5: копирование через промежуточный текстовый редактор

Грубый, но надёжный приём для разовых задач — вставить данные сначала в «Блокнот», а уже оттуда в Excel. Блокнот не сохраняет форматирование, и часть служебных символов при этом теряется. Однако неразрывный пробел он, как правило, сохраняет, поэтому метод работает не всегда — скорее как дополнение к замене.

Эффективнее вставка в Excel через «Специальную вставку» с выбором варианта «Текст в кодировке Unicode» или «Значения», если источник это позволяет. При вставке из табличного документа 1С такой режим иногда отбрасывает служебные символы форматирования.

Сравнение способов и типичные ошибки

Что выбрать

Замена в Excel (Ctrl+H)

Быстро для разовой вставки; требует правильно ввести неразрывный пробел и затем преобразовать текст в число

Формулы ПОДСТАВИТЬ + ЗНАЧЕН

Подходит для регулярных выгрузок; нужен дополнительный столбец и один раз настроенная формула

Сохранение табличного документа в xlsx

Самый чистый результат без ручной доработки; доступно не из всех форм 1С

Формат ЧГ=0 в 1С

Решает проблему в корне для всех пользователей; требует прав доступа к конфигуратору или настройкам отчёта

Типичные ошибки
01
Замена обычного пробела вместо неразрывного — совпадений не находится, и кажется, что способ не работает
02
Удаление пробелов без последующего преобразования в число — значения остаются текстом, формулы и сводные таблицы их игнорируют
03
Замена по всему листу — неразрывные пробелы исчезают из ФИО, адресов и примечаний
04
Игнорирование десятичного разделителя — после очистки 1234,56 превращается в текст из-за несовпадения региональных настроек
Контрольные точки

Как проверить результат

Выравнивание значений в ячейках
Норма

Числа прижаты к правому краю

Тревожный признак

Значения слева — это текст

Формула СУММ по диапазону
Норма

Сумма считается и совпадает с итогом в 1С

Тревожный признак

Сумма равна нулю или меньше ожидаемой

Строка формул при выборе ячейки
Норма

Видны только цифры и десятичный разделитель

Тревожный признак

Между разрядами виден пустой символ

FAQ

Почему «Найти и заменить» не находит пробел, хотя он виден?

Потому что в числе стоит не обычный пробел, а неразрывный (код 160) или узкий неразрывный (код 8239). Скопируйте символ прямо из строки формул проблемной ячейки и вставьте его в поле «Найти», либо введите Alt+0160 с цифровой клавиатуры.

После удаления пробелов числа всё равно не суммируются. Что делать?

Значения остались в текстовом формате. Выделите диапазон, нажмите на значок с восклицательным знаком и выберите «Преобразовать в число». Альтернатива — введите 1 в пустую ячейку, скопируйте её, выделите диапазон и примените «Специальную вставку» с операцией «Умножить».

Можно ли навсегда отключить пробелы в числах в 1С?

Глобальной пользовательской настройки нет: группировка разрядов задаётся форматом конкретного поля или отчёта. Разработчик может задать формат с параметром ЧГ=0 для нужных полей и макетов — тогда разделители не появятся ни на экране, ни при копировании.

Число вроде 1 234,56 после очистки стало 123456. Почему?

При замене вы удалили не только разделитель разрядов, но и десятичный разделитель — либо Excel не распознал запятую из-за региональных настроек. Проверьте, какой десятичный разделитель задан в Windows, и при необходимости замените запятую на точку (или наоборот) отдельной операцией.

Помогает ли выгрузка в CSV вместо копирования?

Да, если 1С или обработка формирует CSV с числами без форматирования. Но если в файл суммы записаны уже с разделителями разрядов, проблема сохранится — тогда проще сразу сохранять табличный документ в формате Excel, где числа записываются как числовые значения ячеек.

Итог

Что важно запомнить

Пробелы при копировании из 1С — это неразрывные пробелы-разделители разрядов. Разово их убирают заменой символа с кодом 160 в Excel с последующим преобразованием в число; регулярно — формулой ПОДСТАВИТЬ или сохранением табличного документа в xlsx; радикально — форматом ЧГ=0 на стороне 1С. Всегда проверяйте результат суммой и выравниванием значений.