Выгрузка данных из 1С в Excel: отчёты, списки и таблицы

· 9 мин

Содержание

Сформированный отчёт или открытый список в 1С 8.3 сохраняется в Excel через Главное меню → Файл → Сохранить как, где в поле типа файла выбирают Лист Excel 2007-…(*.xlsx). Это работает для любого табличного документа: оборотно-сальдовой ведомости, карточки счёта, УПД, списка номенклатуры или контрагентов.

Способов на самом деле несколько, и они не взаимозаменяемы. Отчёт удобнее сохранять целиком через меню, список справочника — командой «Вывести список », а пару ячеек проще скопировать через буфер обмена. Ниже — все рабочие варианты для платформы 8.3 с интерфейсом «Такси», с точными путями, выбором формата и разбором ошибок, из-за которых файл открывается пустым или с «кашей» вместо чисел.

Сохранение сформированного отчёта в файл

Любой отчёт в 1С — это табличный документ. Пока он не сформирован, сохранять нечего, поэтому сначала нажмите Сформировать (Ctrl+Enter), а уже потом выгружайте.

Порядок действий:

  1. Сформируйте отчёт — например, Отчёты → Оборотно-сальдовая ведомость.
  2. Откройте Главное меню → Файл → Сохранить как (главное меню — это кнопка со значком в левом верхнем углу окна программы, рядом с кнопками навигации).
  3. В окне сохранения выберите папку и в поле Тип файла укажите Лист Excel 2007-…(*.xlsx).
  4. Задайте имя файла и нажмите Сохранить.

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

Так сохраняется и печатная форма документа. Откройте, например, счёт или УПД, нажмите Печать, а на появившемся табличном документе — Сохранить как. Форма ляжет в Excel один в один с разметкой, объединёнными ячейками и рамками.

Перед выгрузкой убедитесь, что отчёт действительно сформирован. Если сохранить пустую форму, в файле будут только шапка и настройки — данных не будет.

Выгрузка списка справочника или документов

Список номенклатуры, контрагентов, документов за период в Excel выгружается не через Сохранить как, а отдельной командой — списки это не отчёты.

  1. Откройте нужный список — например, Справочники → Номенклатура или журнал документов .
  2. При необходимости настройте отбор (по складу, периоду, группе) — в файл попадёт то, что видно на экране с учётом отбора.
  3. Нажмите Ещё → Вывести список.
  4. В открывшемся окне выберите Выводить в: табличный документ и отметьте галочками колонки, которые нужны в файле.
  5. Нажмите ОК — сформируется табличный документ.
  6. Сохраните его через Главное меню → Файл → Сохранить как в формат *.xlsx (как в предыдущем разделе).

В файл попадают только видимые в списке колонки. Если нужен, скажем, ИНН контрагента или артикул номенклатуры, сначала выведите эти колонки на экран через Ещё → Изменить форму (или настройку списка), а потом выводите список.

Для аналитики по документам за период чаще удобнее не выгружать журнал, а построить Отчёты → Универсальный отчёт: там можно вывести реквизиты и суммы в нужных разрезах, а затем сохранить результат в Excel тем же способом. В универсальном отчёте выбирают тип источника (документ, справочник, регистр), объект и в настройках задают строки, колонки и отборы — на выходе получается такой же табличный документ, готовый к сохранению.

Если список очень большой (десятки тысяч строк), вывод списка может работать заметно дольше самого отчёта. Для разовой массовой выгрузки надёжнее сузить период или отбор, а для регулярной — использовать программную запись из кода (ниже).

Копирование через буфер обмена

Когда нужны не весь отчёт, а несколько строк или одна колонка, быстрее работать через буфер обмена — без промежуточного файла.

Из табличного документа (отчёта, печатной формы):

  • выделите мышью нужные ячейки;
  • нажмите Ctrl+C;
  • перейдите в открытый лист Excel и нажмите Ctrl+V.

Из списка справочника или документов:

  • выделите строки (Ctrl+A — все, либо с зажатым Ctrl/Shift — выборочно);
  • нажмите Ctrl+C;
  • вставьте в Excel через Ctrl+V.

Из списка копируются значения видимых колонок с разделением по столбцам. Это самый быстрый способ перенести небольшой фрагмент, но форматирование (цвета, объединённые ячейки, формулы итогов) при копировании не переносится — в Excel попадают только значения.

Буфер удобен и для обратной задачи — взять одно-два значения из Excel и вставить в поле 1С. А вот переносить через буфер сотни строк не стоит: большой фрагмент вставляется медленно и чаще «съезжает» по столбцам, чем аккуратная выгрузка через Сохранить как.

Если после вставки длинные числа (коды, штрихкоды, ИНН) превратились в экспоненту вида 4,6E+12, заранее задайте в Excel для этих столбцов текстовый формат и только потом вставляйте.

Какой формат выбрать: XLSX, XLS, MXL или CSV

В окне Сохранить как 1С предлагает больше десятка форматов. Для выгрузки в Excel имеют значение четыре.

ФорматКогда выбиратьОграничения
Лист Excel 2007 (*.xlsx)По умолчанию для современного ExcelДо ~1 млн строк, нужен Excel 2007 и новее
Лист Excel 95/97 (*.xls)Для очень старого ExcelНе более 65 536 строк — лишнее обрежется
Табличный документ (*.mxl)Чтобы снова открыть в 1СExcel такой файл не откроет
CSV с разделителями (*.csv)Для импорта в другие программыТеряется форматирование, важна кодировка

Рекомендация простая: для Excel выбирайте xlsx. Старый xls берите, только если файл будут открывать в Excel 2003 — иначе вы рискуете потерять строки сверх лимита без предупреждения.

Про кодировку стоит помнить при выгрузке в CSV. Если принимающая программа ждёт Windows-1251, а файл сохранён в UTF-8 (или наоборот), кириллица откроется нечитаемыми символами. Формат xlsx этой проблемы лишён — кодировка внутри него фиксированная, поэтому для обычного переноса в Excel он надёжнее CSV.

Отдельно про mxl: это внутренний формат табличного документа 1С. Он полностью сохраняет разметку и расшифровки, но открывается только в 1С. Выбирайте его, если файл позже снова понадобится загрузить или распечатать из программы, а не редактировать в Excel.

Что сохраняется в Excel, а что теряется

Табличный документ 1С и лист Excel устроены по-разному, поэтому при выгрузке в xlsx часть элементов переносится, а часть — нет. Это заранее снимает половину вопросов «почему в файле не так, как на экране».

Переносится:

  • 📊 значения ячеек, их объединение, рамки, заливка и шрифты;
  • 🧱 группировки строк и колонок (плюсики на отчёте) — в Excel они становятся структурой: строки так же сворачиваются и разворачиваются;
  • 🖼 картинки и логотипы из печатных форм, шапки и подвалы.

Не переносится или меняется:

  • расшифровки 1С (двойной клик по ячейке с переходом в документ) — в Excel это просто текст, перехода нет;
  • итоги, которые в отчёте пересчитываются динамически, — в Excel попадают готовыми числами, без формул;
  • защита «только просмотр»: если табличный документ был защищён, в Excel ограничение не переносится, файл редактируется свободно.

Если в отчёте есть группировки и вы хотите видеть в Excel только итоги, сверните лишние уровни на экране перед выгрузкой — структура в файле повторит то, что было развёрнуто.

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

Выгрузка из кода и внешними обработками

Когда выгрузку нужно повторять регулярно или собирать данные сложнее, чем даёт готовый отчёт, помогает программная запись табличного документа или внешняя обработка.

Табличный документ записывается в файл одним методом:

ТабДок = Отчет.СформироватьТабличныйДокумент();
ТабДок.Записать("C:\Выгрузка\otchet.xlsx", ТипФайлаТабличногоДокумента.XLSX);

Доступны типы XLSX, XLS97 (старый Excel), ODS (OpenOffice/LibreOffice) и MXL. Этот код можно оформить как внешнюю обработку и запускать вручную или по расписанию регламентным заданием — тогда файл будет формироваться без участия пользователя.

Для разовой выборки по произвольным данным удобна консоль запросов (внешняя обработка): результат запроса выводится в табличный документ, а дальше сохраняется в xlsx обычным способом.

Если в организации используют не Microsoft Excel, а LibreOffice или «Р7-Офис», выгружайте в xlsx — его открывают все современные табличные редакторы. Формат ODS (тип ТипФайлаТабличногоДокумента.ODS) берите только когда принимающая сторона прямо просит именно его.

Регламентное задание выполняется на сервере, и путь C:\Выгрузка\… будет указывать на диск сервера, а не вашего компьютера. Для выгрузки в сетевую папку используйте UNC-путь вида \\server\share\..., к которому у учётной записи сервера 1С есть доступ на запись.

Если нужна не выгрузка, а наоборот — загрузка данных из Excel в 1С, в типовых «Бухгалтерии предприятия» и «Управлении торговлей» для этого есть встроенная обработка загрузки из табличного документа (её ищут через Сервис или подбор обработок по слову «загрузка»). Это уже обратная задача, но путает её с выгрузкой часто.

Проверьте перед большой выгрузкой
Выполнено: 0 / 5

Если выгрузка идёт с ошибками

Чаще всего проблема не в 1С, а в том, как Excel интерпретирует уже выгруженные данные. Разберём, что делать в типичных ситуациях.

Диагностика: выберите симптом

В веб-клиенте и тонком клиенте через браузер файл не «сохраняется на диск сервера», а скачивается браузером в папку загрузок — проверяйте настройки загрузки браузера, если файл «пропал».

Частые вопросы

Можно ли выгрузить несколько отчётов в один файл Excel с разными листами?
Штатное Сохранить как кладёт один табличный документ в один файл (один лист). Чтобы собрать несколько листов, сохраните каждый отчёт отдельным файлом и объедините листы уже в Excel, либо соберите нужные данные одним табличным документом из кода.
Чем .mxl отличается от .xlsx?
mxl — внутренний формат табличного документа 1С, он открывается только в 1С и полностью сохраняет разметку и расшифровки. xlsx — формат Excel, его откроет любой табличный редактор, но часть внутренней «магии» 1С (расшифровки по ячейкам) в нём теряется.
Как выгрузить так, чтобы длинные коды не превращались в числа?
Надёжнее всего задать в Excel текстовый формат для столбца с кодами ещё до вставки данных. При выгрузке через Сохранить как в xlsx 1С старается сохранить представление, но для гарантии текстовый формат ячеек в Excel решает проблему всегда.
Куда сохраняется файл, если я работаю через браузер?
При работе в веб-клиенте файл не попадает на сервер — его скачивает браузер в вашу папку загрузок. Если появился запрос «Открыть/Сохранить», выберите «Сохранить» и укажите папку.
Можно ли настроить автоматическую выгрузку по расписанию?
Да, через регламентное задание, которое записывает табличный документ методом Записать в заданную папку. Учтите, что задание работает на сервере, поэтому путь должен быть доступен серверу 1С на запись.