Экспорт отчётов и таблиц 1С 8.3 в Excel: от одной кнопки до автоматической выгрузки
Содержание
Чтобы выгрузить отчёт из 1С в Excel, сформируйте его и нажмите Ctrl+S. В окне сохранения выберите тип файла «Лист Microsoft Excel 2007-…» (*.xlsx), укажите папку и имя. Файл откроется в Excel с теми же колонками, итогами и форматом чисел.
Способов вывести данные из 1С 8.3 в Excel несколько, и выбирают их по задаче. Готовый отчёт — сохранением. Список документов или справочник — через «Вывести список ». Нестандартная выборка — универсальным отчётом или консолью запросов. Регулярная выгрузка по расписанию — рассылкой отчётов или внешней обработкой. Всё описанное работает в интерфейсе «Такси» на платформе 8.3 и в типовых конфигурациях: Бухгалтерия 3.0, ЗУП 3.1, УТ 11.
Как сохранить отчёт 1С в файл Excel за минуту
Любой отчёт в 1С выводится в табличный документ. Это сетка ячеек, похожая на лист Excel, и её можно записать в файл.
Пошагово
- Откройте отчёт, задайте период и нажмите «Сформировать».
- Щёлкните мышью по полю с результатом отчёта, чтобы фокус был на таблице, а не на полях периода или отборов.
- Нажмите
Ctrl+Sили кнопку с дискетой на командной панели отчёта. Если кнопки не видно, откройте главное меню (значок с тремя полосками в левом верхнем углу окна) →Файл → Сохранить как.... - В поле «Тип файла» выберите
Лист Microsoft Excel 2007-... (*.xlsx). - Введите имя файла и нажмите «Сохранить».
Сразу давайте файлу понятное имя: «ОСВ_60_сентябрь.xlsx». Через месяц в папке «Загрузки» десяток файлов «Оборотно-сальдовая ведомость.xlsx» не отличить друг от друга.
Какой формат выбрать
| Формат | Когда брать | Ограничения |
|---|---|---|
*.xlsx | Почти всегда: современный Excel, LibreOffice, Google Таблицы | До 1 048 576 строк на лист |
*.xls | Только для очень старого Excel (2003 и раньше) | До 65 536 строк, длинный отчёт обрежется или не сохранится |
*.ods | Если у получателя LibreOffice или «Мой Офис» | Иногда сбивается оформление |
*.mxl | Передать коллеге, у которого тоже есть 1С | Excel такой файл не откроет |
*.pdf | Отчёт нужен «для чтения» или на подпись | Редактировать и считать в нём нельзя |
Формат *.xls для больших отчётов не подходит: карточка счёта за год или анализ продаж по номенклатуре легко превышают 65 тысяч строк.
Быстрый вариант без файла
Если нужен кусок отчёта, выделите ячейки мышью, нажмите Ctrl+C и вставьте в Excel через Ctrl+V. Числа и текст перенесутся, оформление частично. Для таблицы на несколько тысяч строк это медленно, лучше сохранить файл
.
В веб-клиенте и через тонкий клиент в браузере
Порядок тот же, но файл не сохраняется в выбранную папку. Браузер скачивает его в свою папку загрузок. Если ничего не происходит, проверьте, не заблокировал ли браузер всплывающее окно или скачивание.
Как выгрузить из 1С в Excel список документов или справочник
Журнал документов , список контрагентов, номенклатуру отчётом не назовёшь, но выгружают их в Excel чаще всего. Для этого в 8.3 есть команда «Вывести список».
- Откройте нужный список, например
Покупки → Поступление (акты, накладные, УПД)или справочникКонтрагенты. - Если нужна часть данных, сначала поставьте отбор: по периоду, организации, контрагенту.
- Нажмите
Ещё → Вывести список.... - В окне отметьте колонки, которые нужны, и снимите лишние. Можно выбрать «Табличный документ» как способ вывода.
- Нажмите «ОК». Откроется табличный документ.
- Сохраните его через
Ctrl+Sв*.xlsx, как в первом разделе.
«Вывести список» выгружает только колонки, которые есть в форме списка. Если нужного поля нет, добавьте его заранее через Ещё → Изменить форму...: отметьте нужный реквизит флажком, и он появится колонкой в списке. Табличные части документов (товары внутри накладной) этой командой не выгрузить. Для них нужен отчёт.
Для справочника с иерархией (номенклатура по группам) переключите список в режим «Список» вместо «Дерево», иначе выгрузится только текущая группа.
Как подготовить отчёт к выгрузке, чтобы в Excel не пришлось его перекраивать
Отчёт, удобный на экране, часто неудобен в Excel. Шапка с названием организации, строки с отборами, объединённые ячейки и многоуровневые группировки мешают строить сводные таблицы и фильтры. Это лучше убрать в самой 1С до сохранения.
Что настроить в отчёте
Откройте Настройки на панели отчёта. В Бухгалтерии 3.0 в стандартных отчётах (ОСВ, анализ счёта, карточка счёта) есть вкладки с группировками, отборами и оформлением.
- 📌 Группировки. Для плоской таблицы оставьте одну группировку или выведите детальные записи. Каждая строка в Excel должна быть одной записью.
- 📌 Показатели. Оставьте только нужные: например, только «Сумма» без «Количества» и «Валютной суммы».
- 📌 Шапка и отборы. Отключите вывод заголовка и параметров отчёта, если такие флажки есть на вкладке оформления. Тогда первая строка в Excel будет сразу шапкой колонок.
- 📌 Развёрнутое сальдо. Для ОСВ по 60 и 62 счёту включите детализацию по субконто, иначе контрагенты схлопнутся в одну строку.
Режим настроек: простой и расширенный
У отчётов на системе компоновки данных (СКД) настройки бывают двух видов. В простом режиме видны только основные флажки. Расширенный открывается переключателем в окне настроек или через Ещё → Прочее → Изменить вариант отчёта.... Там можно добавить поля, поменять порядок колонок, задать сортировку и условное оформление.
Сохраните получившуюся настройку как отдельный вариант отчёта: Ещё → Сохранить вариант отчёта.... В следующем месяце не придётся собирать её заново: выбрали вариант, поменяли период, сохранили в Excel.
Универсальный отчёт: гибкая выгрузка любых данных из 1С в Excel
Когда нужного стандартного отчёта нет, помогает универсальный отчёт. В Бухгалтерии 3.0 он находится в Отчеты → Стандартные отчеты → Универсальный отчет. Он строит таблицу по любому документу, справочнику или регистру.
Как собрать выборку
- В шапке отчёта выберите тип объекта: «Документ», «Справочник», «Регистр накопления», «Регистр бухгалтерии » или «Регистр сведений ».
- Выберите сам объект, например документ «Реализация (акты, накладные, УПД)».
- Для документа выберите таблицу: основные реквизиты или табличную часть «Товары». Для регистров — остатки, обороты или движения.
- Задайте период.
- В настройках отметьте поля для вывода, добавьте отборы и сортировку.
- Нажмите «Сформировать» и сохраните результат в
*.xlsx.
Так за пять минут получается то, чего нет в стандартных отчётах. Например, все строки товаров из реализаций за квартал с ценой, количеством, складом и контрагентом. В Excel из такой таблицы строится сводная по любому разрезу.
Универсальный отчёт показывает данные «как есть» из базы. В регистре бухгалтерии суммы идут по проводкам, и одна операция может дать несколько строк. Перед сводной проверьте, что не суммируете одно и то же дважды.
Выгрузка через консоль запросов и консоль СКД
Если данных не достать даже универсальным отчётом, бухгалтер обычно зовёт программиста. Тот пишет запрос в консоли и выгружает результат. Этот способ пригодится и опытному пользователю.
Консоль запросов
Это внешняя обработка (*.epf), её нет в меню типовых конфигураций. Её берут из поставки для разработчиков или пишут сами. Открывают через главное меню → Файл → Открыть....
Порядок работы:
- Откройте обработку и напишите запрос на языке запросов 1С или соберите его конструктором.
- Задайте параметры, например период.
- Выполните запрос. Результат появится в таблице внизу.
- Выведите результат в табличный документ, если обработка это умеет, и сохраните его в
*.xlsx.
Пример запроса, который выгружает остатки товаров по складам:
ВЫБРАТЬ
Остатки.Склад КАК Склад,
Остатки.Номенклатура КАК Номенклатура,
Остатки.КоличествоОстаток КАК Количество
ИЗ
РегистрНакопления.ТоварыНаСкладах.Остатки(&НаДату, ) КАК Остатки
УПОРЯДОЧИТЬ ПО
Склад, Номенклатура
Имя регистра зависит от конфигурации. Точное имя смотрите в конструкторе запроса, в дереве объектов слева.
Консоль системы компоновки данных
Это тоже внешняя обработка. Она удобнее для многоуровневых выборок: в ней задают схему (запрос), поля, группировки и итоги, а результат выводится сразу в табличный документ. Его сохраняют в Excel обычным способом.
Открыть внешнюю обработку может только пользователь с правом на интерактивное открытие внешних обработок. Обычно у бухгалтера его нет, и это правильно. Не запускайте обработки из неизвестных источников в рабочей базе: такая обработка может изменить или удалить данные.
Кракозябры, числа-текст и сбитые разделители: как исправить выгрузку
Большинство проблем при экспорте из 1С в Excel возникают не при сохранении в *.xlsx, а при работе с текстовыми форматами и вставкой через буфер обмена.
Если файл уходит в другую программу (банк, сайт, загрузчик маркетплейса), уточните у неё нужную кодировку и разделитель до выгрузки. Это проще, чем потом чинить кодировку.
Автоматическая выгрузка отчётов 1С в Excel
Когда один и тот же отчёт нужен каждый день или неделю, ручное сохранение надоедает. Есть два пути.
Рассылка отчётов
В типовых конфигурациях на БСП (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) есть подсистема рассылки отчётов. Её включают в Администрирование → Печатные формы, отчеты и обработки флажком «Рассылки отчетов».
Что умеет рассылка:
- 📧 отправлять отчёт по почте списку получателей;
- 📁 класть файл в сетевую папку или на FTP;
- 🕒 работать по расписанию: каждый день, по понедельникам, первого числа;
- 📄 сохранять в нужном формате, в том числе
*.xlsx.
Настройка: выбираете вариант отчёта (лучше заранее сохранённый, см. раздел про настройку), формат, получателей и расписание. Для работы по расписанию в файловой базе 1С должна быть запущена у кого-то из пользователей, в клиент-серверной расписание выполняет сервер.
Внешняя обработка с программной выгрузкой
Если отчёт нестандартный или его надо собрать из нескольких источников, программист пишет обработку. Схема простая: выполнить схему компоновки, вывести результат в табличный документ и записать его в файл методом Записать с типом XLSX.
&НаСервере
Процедура ВыгрузитьВExcelНаСервере(ИмяФайла)
ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
Схема = ОбработкаОбъект.ПолучитьМакет("СхемаВыгрузки");
Настройки = Схема.НастройкиПоУмолчанию;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(Схема, Настройки);
Процессор = Новый ПроцессорКомпоновкиДанных;
Процессор.Инициализировать(МакетКомпоновки);
ТабДок = Новый ТабличныйДокумент;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ТабДок);
ПроцессорВывода.Вывести(Процессор);
ТабДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.XLSX);
КонецПроцедуры
Здесь СхемаВыгрузки — макет-схема компоновки внутри обработки. Файл пишется на той машине, где выполняется серверный код. В клиент-серверной базе это сервер 1С, поэтому путь должен быть доступен службе сервера: например, общая сетевая папка. Чтобы отдать файл пользователю, его помещают во временное хранилище и скачивают на клиенте.
Для запуска по расписанию без участия человека код оформляют регламентным заданием. Регламентные задания добавляются в конфигурацию или в расширение, менять типовую конфигурацию ради этого не нужно.