Экспорт данных из 1С 8.3 в Excel: 5 рабочих способов

· 9 мин

Содержание

Чтобы перевести данные из 1С в Excel, в большинстве случаев хватает двух приёмов: выделить строки списка и нажать Ctrl+C, а затем вставить их в лист Excel, либо открыть нужный отчёт и сохранить его кнопкой Сохранить в формате Лист Excel 2007 (*.xlsx). Это работает в 1С 8.3 с интерфейсом «Такси» — в Бухгалтерии, ЗУП, Управлении торговлей и большинстве типовых конфигураций.

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

Копирование в буфер и команда «Вывести список»

Самый быстрый способ выгрузить данные из 1С в Excel — через буфер обмена.

  1. Откройте любой список: справочник, журнал документов , результат отчёта.
  2. Выделите строки. Одна строка — клик, диапазон — Shift+клик, весь список — Ctrl+A.
  3. Нажмите Ctrl+C.
  4. Перейдите в Excel и вставьте Ctrl+V.

Так копируются колонки ровно в том виде, в каком они видны на экране. Минус — переносятся только отображаемые поля, и для больших списков выделение всего через Ctrl+A иногда работает медленно.

Когда нужно вытащить список целиком и выбрать колонки, используйте штатную команду выгрузки:

  1. В списке нажмите кнопку Ещё (в правом верхнем углу формы).
  2. Выберите Вывести список….
  3. В открывшемся окне отметьте галочками нужные колонки.
  4. В поле Выводить в оставьте Табличный документ и нажмите ОК.

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

Команда Вывести список есть почти в каждом списке 1С 8.3: в оборотно-сальдовой ведомости с детализацией, в списке контрагентов, в журнале проводок. Если кнопки Ещё не видно — разверните окно на весь экран, в узком окне часть команд прячется.

Универсальный отчёт: выгрузка любой таблицы базы

Когда в готовых отчётах нет нужного среза, помогает Универсальный отчёт. Он умеет строить таблицу по любому справочнику, документу или регистру и выгружать её в Excel.

Путь в типовых конфигурациях:

КонфигурацияПуть к универсальному отчёту
Бухгалтерия 3.0Отчёты → Универсальный отчёт
ЗУП 3.1Отчётность, справки → Универсальный отчёт
Управление торговлей 11Отчёты → Универсальный отчёт

Порядок работы:

  1. Вверху формы выберите тип источника: Справочник, Документ, Регистр накопления или Регистр сведений.
  2. Рядом укажите конкретный объект — например, справочник Номенклатура или регистр Товары на складах.
  3. Нажмите Настройки, задайте группировки (строки), показатели (колонки) и отборы.
  4. Нажмите Сформировать.
  5. Полученный отчёт сохраните в Excel — через кнопку Сохранить на панели.

Универсальный отчёт удобен тем, что настройку можно сохранить (Ещё → Сохранить вариант отчёта) и потом переформировывать выгрузку одним нажатием.

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

Сохранение отчётов и печатных форм в Excel

Любой сформированный отчёт и любая печатная форма в 1С 8.3 — это табличный документ. А табличный документ сохраняется в Excel напрямую.

Порядок одинаков для оборотки, карточки счёта, печатной формы счёта или акта:

  1. Сформируйте отчёт или откройте печатную форму (кнопка Печать в документе).
  2. Нажмите кнопку Сохранить на верхней панели (значок дискеты) либо Файл → Сохранить как….
  3. В поле Тип файла выберите формат:
    • Лист Microsoft Excel 2007 (*.xlsx) — современный формат, рекомендуется;
    • Лист (Microsoft Excel 97) (*.xls) — для старых версий Excel;
    • Таблица OpenDocument (*.ods) — для LibreOffice и OpenOffice.
  4. Укажите имя и папку, нажмите Сохранить.

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

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

Выбрать способ под конкретную задачу поможет короткое дерево решений:

Что именно нужно выгрузить в Excel?

Массовая выгрузка списков и документов

Разовое копирование не годится, когда нужно выгрузить сотни строк регулярно или собрать данные из нескольких объектов.

Группировка и свёртка перед выгрузкой. В универсальном отчёте и в большинстве стандартных отчётов есть настройка группировок. Сверните данные до нужного уровня (например, продажи по месяцам, а не по каждому чеку) — тогда в Excel уедет компактная таблица, а не десятки тысяч строк.

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

Стандартные выгрузки обмена. Для регулярной передачи данных во внешние системы в типовых конфигурациях есть Администрирование → Синхронизация данных и загрузка/выгрузка через форматы обмена. Это уже не Excel, а структурированные файлы, но если задача — не «посмотреть в таблице», а «передать в другую программу», смотреть надо туда.

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

Текстовые файлы и CSV: когда формат Excel не подходит

Иногда принимающей системе нужен не .xlsx, а простой текст или CSV — например, для загрузки в банк-клиент, маркетплейс или стороннюю программу.

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

  1. Сформируйте таблицу (отчёт, вывод списка).
  2. Файл → Сохранить как….
  3. В типе файла выберите Текстовый файл (*.txt).

Колонки в таком файле разделяются символами табуляции — такой файл Excel открывает корректно.

Для настоящего CSV (значения через точку с запятой или запятую) надёжнее действовать от Excel:

  1. Выгрузите данные в .xlsx любым способом выше.
  2. В Excel выберите Файл → Сохранить как → тип CSV (разделители — запятые).
  3. Excel сам подставит разделитель и кодировку, принятую в системе.

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

CSV не хранит форматирование, формулы и несколько листов — только плоскую таблицу. Длинные числа (например, штрихкоды и расчётные счета) Excel при открытии CSV может показать в виде 1,23E+12. Чтобы этого избежать, открывайте CSV не двойным кликом, а через Данные → Получить данные → Из текстового/CSV-файла и задавайте текстовый формат для таких колонок.

Ошибки кодировки и обрезанные данные при экспорте

Три проблемы встречаются чаще всего. Разберём симптомы и решения.

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

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

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

Автоматизация выгрузки: внешние обработки и запись из кода

Когда одна и та же выгрузка нужна регулярно, её автоматизируют. В 1С 8.3 для этого есть встроенные средства — платить за сторонние программы не нужно.

Внешняя обработка (.epf). Разработчик пишет обработку, которая запросом собирает данные и записывает готовый файл. Обработка подключается через Файл → Открыть… или регистрируется в Администрирование → Печатные формы, отчёты и обработки → Дополнительные отчёты и обработки (пункт доступен, если включён флаг использования дополнительных обработок).

Запись табличного документа из кода. Выгрузка в Excel на встроенном языке делается одной командой записи. Минимальный рабочий пример:

ТабДок = Новый ТабличныйДокумент;

Запрос = Новый Запрос;
Запрос.Текст =
    "ВЫБРАТЬ
    |   Номенклатура.Наименование КАК Наименование,
    |   Номенклатура.Артикул КАК Артикул
    |ИЗ
    |   Справочник.Номенклатура КАК Номенклатура";

Выборка = Запрос.Выполнить().Выбрать();

Строка = 1;
Пока Выборка.Следующий() Цикл
    ТабДок.Область("R" + Строка + "C1").Текст = Выборка.Наименование;
    ТабДок.Область("R" + Строка + "C2").Текст = Выборка.Артикул;
    Строка = Строка + 1;
КонецЦикла;

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

Метод Записать с типом ТипФайлаТабличногоДокумента.XLSX сразу отдаёт готовый файл Excel — конвертация не нужна. Для старого формата используется .XLS97, для текста — .TXT.

Регламентное задание. Чтобы файл создавался сам по расписанию (например, каждую ночь), код выгрузки оформляют как регламентное задание: Администрирование → Обслуживание → Регламентные и фоновые задания. Задание запускается на сервере в фоне и кладёт файл в заранее заданную папку.

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

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

Можно ли выгрузить из 1С сразу в готовый .xlsx, а не в .xls?
Да. При сохранении любого отчёта или списка в поле Тип файла выбирайте Лист Microsoft Excel 2007 (*.xlsx). Формат .xls (Excel 97) оставляйте только для совместимости со старыми программами — он ограничен 65 536 строками.
Сохранятся ли в Excel итоги и группировки из отчёта?
Да, при сохранении через кнопку Сохранить табличный документ переносит и группировки (их видно как структуру строк в Excel), и итоговые суммы, и форматирование. При простом копировании через буфер переносятся только видимые значения.
Почему при открытии CSV из 1С вместо русских букв непонятные символы?
Excel открыл файл в неверной кодировке. Либо выгружайте сразу в .xlsx, либо открывайте CSV через Данные → Из текстового/CSV-файла и выберите кодировку, при которой текст в предпросмотре читается (обычно UTF-8 или Windows-1251).
Как выгрузить не весь справочник, а только отфильтрованные позиции?
Сначала наложите отбор в самом списке 1С (например, по группе или по складу), и только потом выполняйте Ещё → Вывести список. Команда выгрузит ровно то, что осталось после фильтра.
Есть ли ограничение на число строк при выгрузке?
Ограничение накладывает формат файла, а не 1С. .xls — до 65 536 строк, .xlsx — до 1 048 576. Если строк больше, сверните данные группировками в отчёте перед выгрузкой.