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

· 9 мин

Содержание

Лист Excel из 1С получают тремя путями: сохраняют готовый отчёт или печатную форму командой Файл → Сохранить как, копируют выделенный фрагмент через буфер обмена или выводят список справочника, документов или журнала в табличный документ командой Ещё → Вывести список. Для регулярных выгрузок пишут обработку с кодом на встроенном языке.

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

Какой способ выбрать

СпособКогда подходитЧто теряется
Сохранить как xlsxОтчёт, печатная форма, любой табличный документПочти ничего: форматирование, объединённые ячейки, ширина колонок
Буфер обменаФрагмент таблицы, несколько строк и столбцовЧасть оформления; из списков копируется только видимое
Вывести списокСправочники, журналы документов, любые спискиКолонки, которые скрыты или не выбраны в диалоге
Обработка с кодомРегулярные выгрузки по расписанию или по кнопкеНичего, но нужен программист

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

Это основной способ. Он работает с любым табличным документом: оборотно-сальдовой ведомостью, карточкой счёта, счётом-фактурой, накладной.

Шаги в тонком клиенте

  1. Сформируйте отчёт или откройте печатную форму документа кнопкой Печать.
  2. Откройте меню Файл в верхней панели (или нажмите значок дискеты, если он есть в вашем интерфейсе).
  3. Выберите Сохранить как....
  4. В окне выбора файла укажите папку и имя.
  5. В списке Тип файла выберите Лист Microsoft Excel 2007-... (*.xlsx).
  6. Нажмите Сохранить и откройте файл двойным щелчком.

Есть и старый формат Лист Microsoft Excel 97-2003 (*.xls). Он нужен только тем, кто сдаёт файлы в системы, которые не читают xlsx. В остальных случаях берите xlsx: он легче и без ограничения в 65 536 строк на лист.

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

Если работаете через веб-клиент

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

Что получится с форматированием

  • 📐 Объединённые ячейки, границы, заливка и шрифты переносятся.
  • 📏 Ширина колонок сохраняется как в отчёте, а высота строк подбирается Excel.
  • 🔢 Числа приходят числами, если в ячейке именно число. Текстовые ячейки останутся текстом.
  • 🖨 Настройки печати (поля, ориентация, масштаб) переносятся, поэтому файл обычно печатается так же, как из 1С.

Буфер обмена: быстрый перенос без файла

Если файл создавать лень, выделите нужные ячейки в отчёте мышью, нажмите Ctrl+C и вставьте в открытый Excel через Ctrl+V. Это самый быстрый путь для небольших фрагментов.

Выделять можно:

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

Для выделения всей таблицы в табличном документе используйте Ctrl+A.

Из списков (справочников, журналов) тоже можно копировать: выделите строки с Shift или Ctrl и нажмите Ctrl+C. В буфер попадёт то, что видно в колонках на экране. Скрытые колонки не копируются, поэтому сначала включите нужные через Ещё → Изменить форму... или кнопку настройки списка.

Из веб-клиента копирование через буфер зависит от браузера и его прав на доступ к буферу. Если вставка пустая, разрешите сайту доступ к буферу обмена или сохраните отчёт в файл.

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

Допустим, нужен перечень контрагентов с ИНН или реестр документов за месяц. Отчёт для этого строить незачем: список выводится сам.

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

Откроется табличный документ. Дальше действуйте как в первом способе: Файл → Сохранить как... и тип xlsx.

Вывод списка удобен тем, что выбирает колонки независимо от экрана. Можно включить поля, которые на форме списка не показаны, если они доступны в диалоге.

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

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

Печатные формы собираются из макетов, и после выгрузки в Excel они выглядят так же, как на экране. Но есть нюансы.

Формирование и сохранение

  1. Откройте документ и нажмите Печать.
  2. Выберите нужную форму: накладную, акт, счёт.
  3. Дождитесь появления окна предварительного просмотра.
  4. Сохраните командой Файл → Сохранить как... в xlsx.

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

Подпись, печать и картинки

Логотипы, подписи и факсимиле в печатной форме обычно хранятся как картинки. В xlsx они переносятся, но размещаются поверх ячеек и могут сдвинуться при изменении ширины колонок. После выгрузки не двигайте колонки, если важно сохранить расположение.

Установка параметров страницы

Перед сохранением откройте Файл → Параметры страницы (или Предварительный просмотр) и проверьте масштаб и ориентацию. Они уйдут в файл вместе с данными. Одна лишняя колонка, выходящая за поле, превратит печать в два листа.

Настройка параметров выгрузки

У выгрузки в Excel мало настроек, но они определяют, насколько удобно будет работать с файлом.

Тип файла и версия

В списке типов при сохранении есть xlsx, xls и другие форматы (например, PDF, HTML, текстовые файлы). Для дальнейшей работы с цифрами нужен xlsx. Для рассылки «только посмотреть» лучше PDF.

Отчёты: убрать лишнее до выгрузки

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

Хорошо работают две установки:

  • ✅ Отключить группировки, которые не нужны в таблице, оставив плоский вид.
  • ✅ Включить в вывод конечные поля, например номер и дату документа, а не только заголовки групп.

Плоская таблица для сводной

Для сводной таблицы Excel нужен список без итоговых строк и объединённых ячеек. Уберите в настройках отчёта все итоги и повторите значения группировок в каждой строке, если такая опция доступна в вашем отчёте. Тогда сводная соберётся без ручной подготовки.

Перед выгрузкой отчёта
Выполнено: 0 / 5

Программная выгрузка через внешнюю обработку

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

Базовая запись табличного документа

Допустим, у вас есть табличный документ ТабДок с данными. Записать его в xlsx можно одной строкой:

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

Если нужен xls:

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

Путь, по которому пишет клиент, должен существовать и быть доступен для записи пользователю, под которым запущен клиент. На сервере путь означает папку на самом сервере, и это другое место.

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

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

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

ТабДок = Новый ТабличныйДокумент;
ТабДок.Область("R1C1").Текст = "Наименование";
ТабДок.Область("R1C2").Текст = "ИНН";

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

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

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

Как подключить обработку

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

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

Как проверить файл после выгрузки

Откройте xlsx и пробегите глазами по трём вещам. Первое: итог по колонке в Excel (выделите столбец и посмотрите сумму в строке состояния) должен совпасть с итогом в отчёте 1С. Второе: количество строк в файле должно соответствовать списку на экране. Третье: даты и суммы должны выглядеть как даты и суммы, а не как текст.

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

Типичные проблемы при выгрузке

Большинство сбоев повторяется из раза в раз. Вот самые частые, с причинами и решениями.

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

Объединённые ячейки в Excel мешают сортировке и фильтрам. Если файл нужен для анализа, а не для печати, лучше сразу выбрать в отчёте плоский вид без объединений или после выгрузки выделить лист и снять объединение через Объединить и поместить в центре.

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

Нужно ли ставить Excel на компьютер, чтобы выгрузить данные из 1С?
Нет. Сохранить в xlsx 1С умеет сама. Excel нужен только для открытия и правки файла. Бесплатные просмотрщики или другой табличный редактор тоже подойдут.
Можно ли выгрузить в Excel сразу несколько отчётов на разные листы?
Стандартным диалогом нет: каждый отчёт сохраняется в отдельный файл. Если нужен один файл с несколькими листами, собирают его обработкой или копируют листы вручную в Excel.
Почему файл xlsx из 1С открывается в режиме защищённого просмотра?
Excel так ведёт себя с любыми файлами, полученными из сети или скачанными браузером. Нажмите «Разрешить редактирование» и работайте как обычно.
Как выгрузить список контрагентов с реквизитами, которых нет в форме списка?
Используйте Вывести список и отметьте нужные поля в диалоге. Если нужного поля там нет, постройте отчёт по справочнику и добавьте реквизит в настройки отчёта.
Можно ли обратно загрузить правки из Excel в 1С?
Стандартной кнопки «обратной загрузки» у отчёта нет. Для массового обновления данных используют обработки загрузки из табличных документов, у каждой конфигурации они свои.