Печатные формы, списки и отчёты 1С: сохраняем в файл Excel без потерь
Содержание
Чтобы выгрузить документ из 1С в Excel, откройте его печатную форму, нажмите в её командной панели кнопку с дискетой «Сохранить» и выберите формат «Лист Microsoft Excel 2007» (.xlsx). Для любого другого табличного документа — отчёта, списка — подходит главное меню (кнопка ☰ в заголовке окна) → Файл → Сохранить как… или сочетание Ctrl+S.
Частое заблуждение — что для экспорта нужна отдельная обработка или помощь программиста. В 1С 8.3 выгрузка в Excel встроена в платформу. Обработки нужны только для нестандартных выборок и регулярной автоматической выгрузки.
Что можно выгрузить в Excel и каким способом
Сначала определитесь, что именно нужно получить в таблице. От этого зависит способ.
| Что выгружаем | Способ | Что получится в файле |
|---|---|---|
| 📄 Печатная форма документа (накладная, счёт, акт) | Кнопка «Сохранить» в форме печати | Макет как на бумаге: шапка, подписи, объединённые ячейки |
| 📋 Список документов или справочника | Ещё → Вывести список…, затем сохранение | Плоская таблица: одна строка — один документ |
| 🧾 Табличная часть документа (товары, услуги) | Ещё → Вывести список… прямо на табличной части | Строки товаров с колонками количества, цены, суммы |
| 📊 Отчёт (ОСВ, анализ счёта, ведомости) | Ctrl+S или Файл → Сохранить как… | Отчёт с группировками и итогами |
| 🔍 Нестандартная выборка | Универсальный отчёт или внешняя обработка | Таблица с нужными полями и отборами |
Если нужна таблица для сортировки, фильтров и сводных — берите список или универсальный отчёт. Печатная форма хороша для отправки контрагенту, но считать по ней в Excel неудобно из-за объединённых ячеек.
Штатная выгрузка документа из 1С в Excel: три базовых сценария
Все примеры ниже — для интерфейса «Такси» в типовых конфигурациях на платформе 8.3: Бухгалтерия 3.0, ЗУП 3.1, Управление торговлей 11. Механизм сохранения у них общий, он входит в платформу и Библиотеку стандартных подсистем.
Печатная форма документа
- Откройте документ, например «Реализация (акт, накладная, УПД)».
- Нажмите
Печатьи выберите нужную форму. - В окне печатной формы нажмите кнопку с дискетой «Сохранить».
- В открывшемся окне отметьте формат «Лист Microsoft Excel 2007» (
.xlsx). - Выберите «Сохранить в папку на компьютере» и укажите папку.
В этом же окне можно отметить сразу несколько форматов, например xlsx и pdf. Есть и вариант присоединить файл к документу — тогда он появится в присоединённых файлах карточки.
Если печатаете комплект (накладная + счёт-фактура), каждая форма сохранится отдельным файлом.
Список документов или справочника
- Откройте журнал, например
Продажи → Реализация (акты, накладные, УПД). - Установите отбор по периоду, контрагенту или организации.
- Нажмите
Ещё → Вывести список…. - Отметьте нужные колонки и снимите лишние.
- Если нужны только некоторые строки, сначала выделите их и включите флажок «Только выделенные».
- Нажмите «ОК» — откроется табличный документ.
- Сохраните его через
Ctrl+Sв формате.xlsx.
Выводится то, что видно в списке с текущими отборами. Если забыли снять отбор по одной организации, в файл попадут документы только по ней.
Табличная часть документа
Команда Вывести список… работает и на табличной части. Откройте документ, перейдите на вкладку «Товары», нажмите Ещё над таблицей товаров и выберите Вывести список…. В результате получится ровная таблица без шапки накладной — удобно для сверки остатков или загрузки в другую программу.
Для пары строк есть путь ещё короче: выделите строки и нажмите Ctrl+C, затем вставьте в Excel через Ctrl+V.
Формат файла, кодировка и вид данных при сохранении
В окне «Сохранить как…» у табличного документа выбор формата находится в поле типа файла. Для Excel важны три варианта.
| Формат | Предел строк на лист | Когда выбирать |
|---|---|---|
.xlsx (Excel 2007 и новее) | 1 048 576 | Почти всегда: современный формат, большие объёмы |
.xls (Excel 97) | 65 536 | Только если получатель работает в очень старом Excel |
.mxl (табличный документ 1С) | — | Передать отчёт другому пользователю 1С с сохранением оформления |
Кодировка при выгрузке в текст и CSV
С файлами .xlsx вопрос кодировки не возникает: это контейнер с XML, кириллица в нём хранится корректно.
Проблемы появляются, когда данные сохраняют как текст и открывают в Excel двойным щелчком. Excel может угадать кодировку неверно, и вместо букв получатся «кракозябры». Решение:
- В Excel откройте вкладку
Данныеи выберите импорт из текстового файла или CSV. - В поле «Источник файла» укажите
65001: Юникод (UTF-8)или1251: Кириллица (Windows)— тот вариант, при котором в предпросмотре читаемый текст. - Задайте разделитель (табуляция или точка с запятой) и загрузите.
Как сохранить числа числами
После выгрузки суммы иногда ведут себя как текст: не складываются, выровнены влево. Обычно виноваты пробелы-разделители разрядов. Что помогает:
- 🔧 В Excel:
Найти и заменить, в поле «Найти» вставьте скопированный из ячейки пробел, поле «Заменить» оставьте пустым. - 🔧 Инструмент
Данные → Текст по столбцамс форматом столбца «Общий» превращает текст в числа. - 🔧 Для ИНН, номеров счетов и штрихкодов, наоборот, задайте формат «Текстовый» до вставки. Иначе Excel покажет длинное число в экспоненциальной записи и обрежет последние цифры.
Excel хранит числа с точностью до 15 значащих цифр. Номер расчётного счёта из 20 цифр, ставший числом, испортится безвозвратно. Проверяйте такие колонки сразу после выгрузки.
Универсальный отчёт: выгрузка по своим условиям
Когда стандартного списка мало — нужны поля из разных реквизитов, свой отбор и группировка, — используйте «Универсальный отчёт». В Бухгалтерии 3.0 он находится в разделе Отчеты, в блоке стандартных отчётов.
Как собрать выгрузку:
- Откройте «Универсальный отчёт».
- Укажите тип источника: документ, справочник, регистр накопления или сведений.
- Выберите конкретный объект, например документ «Поступление (акты, накладные, УПД)».
- Если у объекта есть табличные части, выберите, что выводить: шапку или конкретную табличную часть.
- Задайте период.
- Через
Настройкиоткройте расширенный режим: здесь добавляются поля, отборы, сортировка, группировки. - Нажмите «Сформировать», затем сохраните результат в
.xlsx.
Пример задачи: выгрузить все поступления от поставщиков за квартал с номенклатурой, количеством и суммой без НДС. В универсальном отчёте выбираете документ поступления, табличную часть «Товары», добавляете поля «Контрагент», «Номенклатура», «Количество», «Сумма» и ставите отбор по периоду.
Перед сохранением в Excel уберите группировки и итоги в настройках, если файл пойдёт в сводную таблицу. Плоская таблица без промежуточных итогов фильтруется и считается без ручной чистки.
Сохраните удачную настройку отчёта через команду сохранения вариантов. В следующий раз выгрузка займёт пару щелчков.
Большие выборки: как выгрузить и не повесить 1С
Выгрузка десятков тысяч строк — главная причина зависаний. Табличный документ формируется в памяти целиком: и при формировании, и при сохранении.
Что делать на практике:
- 📅 Делить по периодам. Год продаж — двенадцать файлов по месяцам. Каждый формируется быстро и не упирается в память.
- 🧹 Убирать лишние колонки. Каждая колонка на 100 000 строк — это ещё 100 000 ячеек.
- 📉 Отключать группировки и итоги. Расчёт иерархии на большом объёме заметно медленнее плоского списка.
- 📁 Сохранять сразу в
.xlsx. В.xlsвыборка больше 65 536 строк не поместится на один лист. - 🖥️ Работать вне пикового времени, если база клиент-серверная и другие пользователи жалуются на тормоза.
Отдельная ловушка — динамический список. Вывести список… выгружает все строки, которые попадают под отбор, даже если на экране видно только 30. Без отбора по периоду журнал документов
за пять лет даст очень большой файл и долгое ожидание.
Если в файловой базе формирование отчёта падает с нехваткой памяти, проверьте, какой у вас клиент. Тонкий клиент x86 ограничен адресным пространством 32-битного процесса. Установка 64-битного клиента той же версии платформы часто снимает проблему.
Автоматическая выгрузка в Excel через внешние обработки
Когда выгрузка нужна каждую неделю в одном виде, ручные шаги начинают отнимать время. Тогда пишут внешнюю обработку
(.epf) или отчёт (.erf).
Как подключить готовую обработку
В Бухгалтерии 3.0 и других конфигурациях на БСП:
- Откройте
Администрирование → Печатные формы, отчеты и обработки. - Включите использование дополнительных отчётов и обработок.
- Перейдите в «Дополнительные отчеты и обработки» и добавьте файл.
- Укажите, в каких разделах она будет доступна и каким пользователям.
Разовый запуск возможен через Файл → Открыть, но для этого у пользователя должно быть право на интерактивное открытие внешних обработок. Платформа при открытии выдаёт предупреждение о безопасности. Запускайте только обработки из проверенного источника: внешняя обработка выполняется с правами пользователя и может изменить данные.
Минимальный код выгрузки
Ядро любой такой обработки — объект ТабличныйДокумент и его метод Записать. Пример выгружает номенклатуру в файл:
&НаСервере
Процедура ВыгрузитьНаСервере(ИмяФайла)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Код КАК Код,
| Номенклатура.Наименование КАК Наименование
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| НЕ Номенклатура.ЭтоГруппа";
Выборка = Запрос.Выполнить().Выбрать();
ТабДок = Новый ТабличныйДокумент;
ТабДок.Область(1, 1).Текст = "Код";
ТабДок.Область(1, 2).Текст = "Наименование";
НомерСтроки = 1;
Пока Выборка.Следующий() Цикл
НомерСтроки = НомерСтроки + 1;
ТабДок.Область(НомерСтроки, 1).Текст = Выборка.Код;
ТабДок.Область(НомерСтроки, 2).Текст = Выборка.Наименование;
КонецЦикла;
ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.XLSX);
КонецПроцедуры
В клиент-серверной базе файл с таким кодом запишется на диск сервера 1С, а не на компьютер пользователя. Чтобы отдать файл пользователю, его помещают во временное хранилище и получают на клиенте. Либо указывают сетевую папку, куда у службы сервера 1С есть доступ на запись.
Сравнение способов автоматизации
| Способ | Когда подходит | Риски и ограничения |
|---|---|---|
ТабличныйДокумент.Записать | Обычные таблицы и отчёты | Нет формул Excel и сложного форматирования |
COM-объект Excel.Application | Нужны формулы, макросы, точное оформление | Требует установленного Excel; медленно на больших объёмах |
| Отчёт на СКД во внешнем файле | Пользователь сам меняет поля и отборы | Нужен разработчик для первой настройки |
| Регламентное задание в расширении | Выгрузка по расписанию без участия человека | Нужен клиент-серверный режим или настроенный запуск; доработка конфигурации |
Для регулярной отправки отчётов бухгалтеру или руководителю в типовых конфигурациях есть рассылка отчётов. Она сама формирует отчёт по расписанию и отправляет его вложением, в том числе в xlsx. Проверьте её до заказа доработки.
Ошибки при выгрузке в Excel и что с ними делать
Ниже — сбои, которые встречаются чаще всего. Нажмите на симптом, чтобы увидеть причину.
Ещё одна неочевидная деталь — объединённые ячейки. Печатные формы 1С сверстаны объединениями. Excel не даёт сортировать диапазон с ячейками разного размера. Для анализа берите не печатную форму, а список или отчёт.