Отчёт из 1С — в таблицу Excel без потери цифр и структуры
Содержание
Чтобы выгрузить отчёт из 1С в Excel, сформируйте его, нажмите в форме отчёта кнопку с дискетой «Сохранить» (или Ctrl+S, пока курсор стоит в таблице отчёта) и в поле «Тип файла» выберите Лист Excel 2007-... (*.xlsx). Файл откроется в Excel с той же разметкой, что и на экране: шапка, группировки, итоги.
Сложности начинаются потом. Цифры не суммируются, потому что стали текстом. Сводная таблица не строится из-за объединённых ячеек и многоуровневой шапки. Выгрузка на 200 тысяч строк падает или обрезается. Всё это решается настройкой отчёта до сохранения, а не ручной чисткой в Excel. Порядок действий одинаков для любой типовой конфигурации на платформе 8.3 — Бухгалтерии 3.0, ЗУП 3.1, УТ 11: механизм сохранения табличного документа общий.
1. Сохранение отчёта в Excel стандартными средствами
Через кнопку «Сохранить»
- Откройте отчёт, задайте период и отборы, нажмите «Сформировать».
- Дождитесь, пока таблица полностью построится. Если сохранить раньше, в файл попадёт пустая форма.
- Нажмите дискету в командной панели отчёта. Если её не видно — она спрятана в меню «Ещё».
- В окне сохранения выберите папку, задайте имя файла и тип
*.xlsx. - Нажмите «Сохранить» и откройте файл в Excel.
Если в форме нет ни дискеты, ни пункта в «Ещё», работает главное меню: значок с тремя полосками в левом верхнем углу → Файл → Сохранить как. Команда сохраняет активный табличный документ, поэтому сначала щёлкните мышью по таблице отчёта.
Копированием через буфер обмена
Когда нужен фрагмент, а не весь отчёт, быстрее скопировать:
- 🖱️ выделите диапазон мышью или нажмите
Ctrl+A, чтобы выделить всё; - 📋 нажмите
Ctrl+C; - 📄 в Excel встаньте в ячейку A1 и нажмите
Ctrl+V.
Обычная вставка переносит шрифты, рамки и заливку. Если оформление мешает, используйте в Excel «Специальную вставку» → «Текст» или «Значения». Так в лист попадут только данные, а таблица останется лёгкой.
Выгрузка журнала или справочника
Списки документов и справочников — это не отчёт, и дискеты у них нет. Для них есть команда Ещё → Вывести список.... Отметьте нужные колонки, нажмите «ОК» — 1С построит табличный документ, который сохраняется в xlsx так же, как отчёт. В список попадают только строки с учётом текущих отборов, поэтому настройте фильтр до вывода.
Нет кнопки сохранения, а Ctrl+C ничего не копирует — скорее всего, у вашей роли снято право «Вывод». Оно отвечает за печать, сохранение и копирование данных из форм. Включает его администратор базы в настройках прав пользователя.
2. Какой формат файла выбрать при выгрузке
В окне сохранения форматов много, и выбор влияет на результат.
| Формат | Когда брать | Ограничения |
|---|---|---|
*.xlsx (Excel 2007 и новее) | Почти всегда | До 1 048 576 строк и 16 384 колонок на лист |
*.xls (Excel 97) | Только для старых программ и сервисов, которые не читают xlsx | До 65 536 строк и 256 колонок — длинный отчёт обрежется или не сохранится |
*.ods | LibreOffice, «Мой Офис» | Иногда сбивается ширина колонок |
*.mxl | Передать отчёт другому пользователю 1С без потерь | Открывается только в 1С или бесплатной программе просмотра 1С:Предприятие — Работа с файлами |
*.txt | Загрузка в стороннюю программу, которой нужен простой текст | Пропадают оформление и структура, возможны проблемы с кодировкой |
*.pdf | Отправить «как есть» на просмотр или печать | Данные не обработать |
Для отчёта длиннее 65 536 строк выбирайте только xlsx. Формат xls такой объём не вмещает физически, и это ограничение самого Excel, а не 1С.
3. Настройка отчёта на СКД перед выгрузкой в Excel
Большинство отчётов в современных конфигурациях построены на системе компоновки данных (СКД). Их можно переделать прямо в пользовательском режиме так, чтобы в Excel пришла чистая плоская таблица, а не «ёлка» из группировок.
Что мешает работать с выгрузкой
- 🌲 вложенные группировки: контрагент → договор → документ, каждый уровень в отдельной строке;
- ➕ промежуточные итоги между строками — при суммировании столбца в Excel они задваивают сумму;
- 🧱 шапка из 2–3 строк с объединёнными ячейками;
- 🏷️ строки заголовка, параметров и отборов над таблицей.
Как получить плоскую таблицу
- В форме отчёта откройте «Настройки». Если окно короткое, переключите его в расширенный режим — так станет доступна вкладка структуры отчёта.
- В структуре удалите лишние группировки или замените их одной группировкой «Детальные записи».
- Нужные поля (контрагент, номенклатура, дата) добавьте не как уровни группировки, а как колонки.
- На вкладке с итогами или оформлением отключите вывод общих и промежуточных итогов.
- Отключите вывод заголовка, параметров и отборов, если в настройках варианта есть такие флажки.
- Сформируйте отчёт и сохраните в xlsx.
Получится одна строка шапки и под ней данные. Из такой таблицы сводная в Excel строится в два клика: Вставка → Сводная таблица.
Сохраните настройку как отдельный вариант отчёта: «Сохранить вариант» в меню «Ещё» или рядом с выбором варианта. В следующий раз выбираете вариант «Для Excel» и сразу формируете — без повторной перенастройки.
Универсальный отчёт для нестандартных выборок
Если ни один готовый отчёт не даёт нужного набора колонок, в Бухгалтерии 3.0 и других конфигурациях на БСП есть «Универсальный отчёт» в разделе «Отчёты». В нём выбирают объект — справочник, документ, регистр — и собирают таблицу из его полей. Для выгрузки в Excel это часто удобнее, чем переделывать ОСВ или анализ субконто.
4. Структура табличного документа в Excel: что сохраняется
Отчёт в 1С — это табличный документ. При сохранении в xlsx платформа переносит его разметку ячейка в ячейку. Полезно заранее знать, что переедет, а что нет.
| Элемент в 1С | Что будет в Excel |
|---|---|
| Шрифты, заливка, рамки, ширина колонок | Сохраняются |
| Объединённые ячейки | Сохраняются как объединённые — мешают сортировке и фильтру |
| Группировки строк с «+» и «−» | Обычно становятся группами Excel с кнопками уровней слева |
| Свёрнутые группировки | Строки есть в файле, просто скрыты — разверните уровни |
| Расшифровка по двойному щелчку | Пропадает: в Excel это обычные значения |
| Итоги | Приходят готовыми числами, а не формулами СУММ |
| Закрепление шапки | Может не сохраниться — закрепите заново через Вид → Закрепить области |
Отсюда два практических вывода.
- ✅ Перед сохранением разверните все группировки, если планируете печатать или пересылать файл. Иначе получатель увидит только итоги верхнего уровня и решит, что данных нет.
- ✅ Итоги в Excel не пересчитаются, если вы поправите цифру в строке. Для расчётов удалите итоговые строки и посчитайте заново формулами.
Если в отчёте стоит отбор, а заголовок с параметрами вы отключили, в файле не останется следа, что данные неполные. Укажите отбор в имени файла, например ОСВ_60_сч_3кв_ООО_Ромашка.xlsx.
5. Выгрузка результата из консоли запросов
Бухгалтеру консоль запросов обычно не нужна. Аналитику и программисту она даёт то, чего нет в отчётах: произвольную выборку из любых таблиц базы с нужными колонками.
Как это устроено
Консоль запросов — внешняя обработка, файл .epf. В типовые конфигурации она не встроена. Её берут из набора инструментов разработчика или у программиста, который сопровождает базу.
- Откройте файл через главное меню →
Файл → Открыть. - Если платформа покажет предупреждение о безопасности, подтвердите открытие. Для этого у пользователя должно быть право на интерактивное открытие внешних обработок.
- Напишите запрос или соберите его конструктором и выполните.
- Результат выводится в таблицу на форме консоли. Большинство консолей умеют выводить его в табличный документ — после этого сохраняйте как обычный отчёт в xlsx.
Если такой команды в вашей консоли нет, выделите строки результата, скопируйте Ctrl+C и вставьте в Excel.
Пример запроса для выгрузки
Простая выборка номенклатуры с артикулом и единицей измерения. Поля названы по Бухгалтерии 3.0, в другой конфигурации реквизиты могут называться иначе — проверьте их в конструкторе запроса.
ВЫБРАТЬ
Номенклатура.Код КАК Код,
Номенклатура.Артикул КАК Артикул,
Номенклатура.Наименование КАК Наименование,
Номенклатура.ЕдиницаИзмерения КАК ЕдиницаИзмерения
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
НЕ Номенклатура.ЭтоГруппа
И НЕ Номенклатура.ПометкаУдаления
УПОРЯДОЧИТЬ ПО
Наименование
Запрос только читает данные и ничего не меняет в базе. Но тяжёлый запрос без отборов по большой базе нагружает сервер. Если в базе работают люди, ограничивайте период и добавляйте ПЕРВЫЕ 1000 на этапе отладки.
6. Цифры текстом, кракозябры и другие проблемы файла Excel
Файл сохранился, но с ним неудобно работать. Ниже — частые симптомы и что с ними делать.
Что сделать ещё до сохранения
- 🔢 Убрать разделитель разрядов. В части отчётов он задаётся в оформлении или в формате поля в расширенных настройках. Без пробелов Excel сразу распознаёт числа.
- 📅 Вывести дату отдельной колонкой, а не в составе представления документа. Строка «Реализация 00045 от 12.03» — это текст, по ней не отфильтровать по месяцу.
- 🧾 Не выводить в одну ячейку «Дебет / Кредит» через перенос строки. Две колонки обрабатывать проще.
7. Автоматическая выгрузка отчётов в Excel
Если один и тот же отчёт нужен каждый понедельник, руками его сохранять незачем.
Рассылка отчётов
В конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) есть подсистема рассылки отчётов. Её включают в Администрирование → Печатные формы, отчеты и обработки, флажок с рассылками отчётов. Дальше:
- Создайте рассылку и добавьте в неё отчёты с нужными вариантами настроек.
- Укажите формат вложения — xlsx.
- Выберите, куда доставлять: на электронную почту или в сетевую папку.
- Задайте расписание, например «по понедельникам в 7:00».
Рассылка по расписанию работает через регламентные задания. В клиент-серверной базе их выполняет сервер 1С. В файловой базе задания идут, только пока открыт хотя бы один сеанс, поэтому утренняя рассылка в пустом офисе не уйдёт.
Внешняя обработка с выгрузкой
Когда нужен файл нестандартной структуры — например, для загрузки в BI-систему или сайт, — программист пишет обработку. Её ядро — метод Записать табличного документа. Пример формирует таблицу из запроса и сохраняет её в xlsx:
&НаСервереБезКонтекста
Процедура ВыгрузитьНоменклатуру(ПутьКФайлу)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Код КАК Код,
| Номенклатура.Наименование КАК Наименование
|ИЗ
| Справочник.Номенклатура КАК Номенклатура
|ГДЕ
| НЕ Номенклатура.ЭтоГруппа";
Выборка = Запрос.Выполнить().Выбрать();
ТабДок = Новый ТабличныйДокумент;
ТабДок.Область(1, 1).Текст = "Код";
ТабДок.Область(1, 2).Текст = "Наименование";
НомерСтроки = 1;
Пока Выборка.Следующий() Цикл
НомерСтроки = НомерСтроки + 1;
ТабДок.Область(НомерСтроки, 1).Текст = Выборка.Код;
ТабДок.Область(НомерСтроки, 2).Текст = Выборка.Наименование;
КонецЦикла;
ТабДок.Записать(ПутьКФайлу, ТипФайлаТабличногоДокумента.XLSX);
КонецПроцедуры
Процедура выполняется на сервере, значит, ПутьКФайлу — путь на компьютере, где работает сервер 1С, например \\fileserver\exchange\nomenklatura.xlsx. У пользователя, от имени которого запущена служба сервера, должны быть права на запись в эту папку. В файловой базе сервер и клиент — один компьютер, и путь локальный.
Для выгрузки готового отчёта СКД в файл программисты используют связку из компоновщика макета и процессора вывода в табличный документ. Кода больше, но в файле получается ровно тот же вариант отчёта, что видит пользователь.
Частые вопросы
Можно ли выгрузить отчёт из 1С сразу в Google Таблицы?
Почему в Excel отчёт выглядит иначе, чем в 1С?
Как выгрузить из 1С печатную форму документа — счёт или акт — в Excel?
Ctrl+S. Печатная форма — такой же табличный документ, как отчёт, и сохраняется в xlsx тем же способом.