К статье
Практический материал

Автоматизация · 12 мин

Как привязать 1С к Excel: способы обмена данными

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

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

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

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

Выгрузка отчётов и табличных документов из 1С в Excel

Любой отчёт, сформированный в 1С, — это табличный документ, который можно сохранить в формате Excel без дополнительных настроек. Сформируйте отчёт, затем откройте меню «Файл» (или кнопку с дискетой/стрелкой в зависимости от версии платформы) и выберите «Сохранить как» или «Сохранить копию». В списке типов файлов укажите «Лист Excel (.xlsx)» или «Лист Excel 97–2003 (.xls)».

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

В тонком клиенте и веб-клиенте путь может отличаться: ищите команду «Сохранить как» в меню «Ещё» или через сочетание клавиш Ctrl+S при активном табличном документе. Если команда недоступна, проверьте права — у пользователя должно быть разрешение на вывод (печать и сохранение) табличных документов.

Как сохранить отчёт из 1С в Excel
  1. 1
    Сформируйте нужный отчёт или откройте печатную форму документа
  2. 2
    Откройте меню «Файл» и выберите «Сохранить как» (или «Сохранить копию»)
  3. 3
    В поле «Тип файла» укажите формат Excel (.xlsx или .xls)
  4. 4
    Укажите папку и имя файла, подтвердите сохранение
  5. 5
    Откройте файл в Excel и проверьте, что данные и структура колонок не исказились

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

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

Быстрый вариант для небольших объёмов — копирование через буфер обмена. Выделите строки табличной части документа или списка (Ctrl+A для всех строк, Ctrl+клик для выборочных), скопируйте (Ctrl+C) и вставьте в лист Excel (Ctrl+V). Данные вставляются с разбивкой по ячейкам, но без заголовков колонок — их придётся добавить вручную.

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

Загрузка данных из Excel в 1С типовыми средствами

В конфигурациях на базе Библиотеки стандартных подсистем (Управление торговлей 11, ERP, Комплексная автоматизация, Бухгалтерия предприятия 3.0) встроена обработка «Загрузка данных из табличного документа». Она позволяет загрузить данные из файла Excel в справочники и некоторые табличные части без программирования. Найдите её через «НСИ и администрирование» → «Загрузка данных из табличного документа» или через поиск по команде «загрузка».

Порядок работы: выберите объект загрузки (например, справочник «Номенклатура»), откройте файл Excel — обработка покажет его содержимое как табличный документ. Затем сопоставьте колонки файла полям объекта: укажите, в какой колонке наименование, в какой — артикул, единица измерения и так далее. После настройки соответствия нажмите «Загрузить» и проверьте протокол: обработка сообщит, сколько элементов создано и какие строки пропущены с указанием причины.

В Бухгалтерии предприятия есть также специализированные загрузки: например, загрузка выписки из клиент-банка и загрузка номенклатуры из файла в документах поступления. Ищите кнопку «Загрузить» в форме списка или документа — часто она скрыта в меню «Ещё».

Требования к файлу Excel для корректной загрузки

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

Типы данных в колонках должны быть однородными: в колонке с ценой — только числа, в колонке с датой — только даты. Excel любит самовольно преобразовывать значения: артикул «012345» может превратиться в число 12345 с потерей ведущего нуля, а штрихкод из 13 цифр — в экспоненциальную запись. Чтобы этого избежать, задайте текстовый формат таким колонкам до ввода данных.

Если загрузка идёт через промежуточное сохранение, надёжнее использовать формат CSV или MXL — в них нет скрытого форматирования, которое может помешать обработке. Формат XLSX обработки читают либо напрямую, либо через установленный на компьютере Excel — уточните это в описании конкретной обработки.

Типичные ошибки при загрузке из Excel
01
Объединённые ячейки и многострочная шапка — обработка смещает колонки, данные попадают не в те поля
02
Числа, сохранённые как текст, — цены и количества не загружаются или загружаются нулями
03
Потеря ведущих нулей в артикулах и штрихкодах — создаются дубли элементов с «обрезанными» кодами
04
Загрузка сразу всего файла без теста на нескольких строках — массовые ошибки приходится исправлять вручную
05
Отсутствие резервной копии перед загрузкой — некорректные данные невозможно быстро откатить

Программная связь 1С и Excel через COM-объект

Если обмен нужен регулярно и по отработанному сценарию, используют COM-подключение: 1С обращается к Excel как к COM-объекту (Excel.Application) и читает или записывает ячейки напрямую. Этот способ требует, чтобы на компьютере, где выполняется код, был установлен Microsoft Excel, и работает только под Windows.

Типовой фрагмент кода для чтения данных из файла выглядит так: создаётся объект Excel, открывается книга, циклом обходятся строки листа, значения ячеек присваиваются реквизитам создаваемых объектов 1С. После завершения обязательно закрывают книгу и завершают процесс Excel, иначе в диспетчере задач копятся «зависшие» процессы EXCEL.EXE.

bsl
Excel = Новый COMОбъект("Excel.Application");
Книга = Excel.Workbooks.Open("C:\Данные\номенклатура.xlsx");
Лист = Книга.Worksheets(1);
Для Строка = 2 По Лист.UsedRange.Rows.Count Цикл
    Наименование = Лист.Cells(Строка, 1).Value;
    // создание элемента справочника...
КонецЦикла;
Книга.Close(0);
Excel.Quit();

Альтернативы COM-подключению без установленного Excel — чтение файлов через объекты платформы «ТабличныйДокумент» (метод Прочитать) или «ЧтениеXML»/«ЧтениеТекста» для CSV. Эти варианты работают на сервере под Linux и не требуют лицензии Office, поэтому для серверных регламентных заданий они предпочтительнее.

COM-подключение к Excel заметно медленнее чтения файла встроенными средствами платформы: обход тысяч строк через COM может занимать минуты. Если файл большой, сначала сохраните его из Excel в CSV и читайте как текст — это ускоряет загрузку в разы и снимает зависимость от установленного Office.
ПЗ
Практическое замечание

Сравнение способов обмена между 1С и Excel

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

СпособНаправлениеКому подходитОграничения
Сохранить как ExcelИз 1С в ExcelЛюбой пользовательТолько табличные документы, вручную
Буфер обменаИз 1С в ExcelЛюбой пользовательНебольшие объёмы, без заголовков
Загрузка из табличного документа (БСП)Из Excel в 1СПользователь с правамиТолько справочники и часть табличных частей
Внешняя обработка загрузкиИз Excel в 1СНужен разработчик или готовая обработкаТребует адаптации под конфигурацию
COM-объект ExcelОба направленияПрограммистТолько Windows, нужен установленный Excel
CSV/XML как промежуточный форматОба направленияПрограммистНужна договорённость о структуре файла
Маршрут решения

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

Нужно разово передать отчёт или список в ExcelИспользуйте «Файл → Сохранить как» или «Вывести список»
Нужно загрузить номенклатуру или контрагентов в типовую конфигурациюПопробуйте обработку «Загрузка данных из табличного документа»
Обмен нужен регулярно по расписанию на сервереНастройте обмен через CSV/XML без привязки к Excel
Нестандартная структура файла от поставщикаЗакажите или напишите внешнюю обработку загрузки под этот формат

Проверка результата после обмена

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

После загрузки в 1С проверьте три вещи: количество созданных элементов (должно совпадать с числом строк файла минус отклонённые), отсутствие дублей (найдите несколько позиций поиском по наименованию и артикулу) и корректность ключевых полей — цен, ставок НДС, единиц измерения. Удобно открыть 3–5 случайных элементов и сверить их с исходным файлом построчно.

Контрольные точки

Как проверить результат обмена

Количество строк
Норма

Число загруженных элементов равно числу строк данных в файле

Тревожный признак

Элементов меньше или больше — ищите пропущенные строки или дубли

Суммы и числа
Норма

Итоги в Excel и в 1С совпадают до копейки

Тревожный признак

Расхождения — числа распознаны как текст или потеряны разряды

Артикулы и штрихкоды
Норма

Ведущие нули и все цифры на месте

Тревожный признак

Коды «обрезаны» — колонка в Excel была числовой

Дубли элементов
Норма

Поиск по наименованию находит ровно один элемент

Тревожный признак

Несколько одинаковых позиций — загрузка выполнялась повторно или без контроля уникальности

Частые вопросы о связке 1С и Excel

Можно ли привязать Excel к 1С без программиста?

Да, для типовых задач. Выгрузка отчётов и списков доступна любому пользователю через «Сохранить как», а загрузка справочников в конфигурациях на БСП выполняется обработкой «Загрузка данных из табличного документа» без единой строки кода. Программист понадобится только для нестандартных форматов файлов или автоматического обмена по расписанию.

Почему 1С не сохраняет в Excel — команда неактивна?

Чаще всего не хватает прав: у пользователя должно быть разрешение на вывод (печать и сохранение). Вторая причина — активен не табличный документ, а другой элемент формы: кликните в область сформированного отчёта и повторите команду. В веб-клиенте проверьте, не блокирует ли браузер скачивание файлов.

Что делать, если Excel не установлен на компьютере с 1С?

Для выгрузки используйте форматы MXL, CSV или HTML — их можно открыть и в Excel, и в бесплатных редакторах. Для загрузки сохраните файл в CSV: большинство обработок читают его без участия Excel. COM-подключение без установленного Office работать не будет.

Как загрузить из Excel документы, а не справочники?

Типовая обработка БСП загружает в основном справочники и табличные части. Для создания документов (поступлений, заказов, счетов) обычно нужна внешняя обработка или специализированный механизм конфигурации — например, в Управлении торговлей есть загрузка заказов поставщику из файла. Уточните наличие такой функции в документации к вашей конфигурации.

Опасно ли загружать данные из файлов, полученных от контрагентов?

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

Можно ли настроить автоматическую выгрузку из 1С в Excel по расписанию?

Да, через регламентные задания: разработчик создаёт процедуру, которая формирует отчёт и сохраняет его в файл (XLSX, CSV или MXL) в заданную папку или отправляет по почте. Штатными пользовательскими средствами без доработки конфигурации такое расписание обычно не настраивается.

Итог

Что важно запомнить

Выгрузка из 1С в Excel выполняется через «Сохранить как» или «Вывести список» без дополнительных настроек. Для загрузки используйте типовую обработку «Загрузка данных из табличного документа» и заранее приведите файл к плоской таблице без объединённых ячеек. Перед любой загрузкой делайте резервную копию и тестируйте на нескольких строках, а регулярный обмен автоматизируйте через CSV/XML, а не через COM-объект Excel.