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

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

Как подключить Excel к 1С: рабочие способы и пошаговая настройка

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

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

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

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

Какой способ подключения выбрать под вашу задачу

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

Сравнение способов подключения

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

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

Типовая загрузка из табличного документа

Встроена в конфигурации на БСП. Подходит для справочников и цен. Ограничение: только загрузка, шаблон колонок фиксирован.

Внешняя обработка (.epf)

Гибкая настройка под свой формат файла. Требует навыков программирования или готовой обработки.

COM/ADO из встроенного языка 1С

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

Формат mxm/CSV как промежуточный

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

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

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

В конфигурациях на базе Библиотеки стандартных подсистем (БСП) есть универсальная обработка «Загрузка данных из табличного документа». Она находится в разделе «Администрирование» → «Обслуживание» или через «Все функции» → «Обработки». Доступ к ней требует прав администратора или настройщика.

Принцип работы: вы открываете файл Excel (обработка сама прочитает xlsx или вы вставляете данные из буфера), указываете, какая колонка соответствует какому реквизиту справочника, и запускаете загрузку. Программа ищет существующие элементы по ключевым полям (например, по артикулу или ИНН) и либо обновляет их, либо создаёт новые.

Порядок загрузки номенклатуры из Excel
  1. 1
    Подготовьте файл: первая строка — заголовки колонок, без объединённых ячеек и пустых строк внутри данных.
  2. 2
    Откройте «Администрирование» → «Загрузка данных из табличного документа».
  3. 3
    Выберите вид загружаемых данных (например, «Номенклатура») и откройте файл Excel.
  4. 4
    Сопоставьте колонки файла реквизитам справочника; ключевое поле (артикул/наименование) отметьте как поле поиска.
  5. 5
    Нажмите «Загрузить» и проверьте протокол: сколько элементов создано, сколько обновлено, сколько пропущено с ошибками.

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

Выгрузка данных из 1С в Excel

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

Для списков справочников и документов работает команда «Вывести список» (кнопка «Ещё» в форме списка): программа формирует табличный документ с выбранными колонками, который затем сохраняется в Excel. Это удобно для выгрузки контрагентов, номенклатуры, заказов за период.

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

Программное подключение: COM и чтение файлов из кода 1С

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

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

Альтернатива без установленного Excel — чтение файла как табличного документа средствами платформы (ТабличныйДокумент.Прочитать) или через драйвер ADO/ACE, который позволяет выполнять к файлу SQL-подобные запросы. Первый вариант работает на сервере без Office и подходит для регламентных заданий; второй быстрее COM на больших таблицах.

Настройка регулярного обмена

Разовая загрузка и постоянная интеграция — разные по сложности задачи. Если Excel-файл обновляется ежедневно (прайс поставщика, выгрузка из интернет-магазина), имеет смысл настроить автоматику: регламентное задание забирает файл из заданной папки, загружает данные и пишет результат в журнал.

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

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

Маршрут решения

Как выбрать действие

Нужно один раз перенести справочник при переходе на 1СИспользуйте типовую обработку «Загрузка данных из табличного документа»
Поставщик присылает прайс в Excel регулярно в одном форматеНастройте внешнюю обработку и регламентное задание
На сервере 1С нет установленного ExcelЧитайте файл через ТабличныйДокумент.Прочитать или перейдите на CSV
Нужна двусторонняя синхронизация с другой системойРассмотрите обмен через веб-сервисы или CSV вместо Excel

Проверка результата и типичные ошибки

После любой загрузки сверяйте контрольные итоги: количество строк в файле против количества созданных и обновлённых элементов, суммы по документам, случайную выборку из 5–10 позиций с ручной сверкой цен и наименований. Протокол загрузки типовой обработки показывает пропущенные строки с причинами — не игнорируйте его.

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

Отдельная группа проблем — кодировка и региональные настройки при работе через CSV: разделитель (точка с запятой или запятая) и десятичный разделитель зависят от региональных настроек Windows. Если после загрузки цены «уехали» на два порядка, проверьте, не воспринялась ли запятая как разделитель тысяч.

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

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

Количество загруженных элементов
Норма

Совпадает с числом строк данных в файле (минус заголовок)

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

Расхождение без объяснения в протоколе

Дубли справочника
Норма

Отчёт по дублям (поиск по артикулу/ИНН) пуст

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

Несколько элементов с одинаковым ключевым полем

Выборочная сверка значений
Норма

Цены и наименования в 1С совпадают с файлом

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

Сдвиг колонок, обрезанные строки, нули вместо чисел

Журнал регистрации
Норма

Нет ошибок за период загрузки

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

Ошибки преобразования типов или блокировок

Часто задаваемые вопросы

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

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

Работает ли загрузка из Excel в файловой и клиент-серверной 1С одинаково?

Типовая загрузка работает одинаково. Различия появляются при программном чтении файлов: в клиент-серверном варианте код выполняется на сервере, поэтому файл должен быть доступен с сервера, а COM-объект Excel требует установки Office именно на сервере, что обычно не рекомендуется. Для сервера предпочтительнее чтение через ТабличныйДокумент или CSV.

Почему при загрузке создаются дубли номенклатуры?

Почти всегда причина в поле поиска: обработка ищет существующий элемент по наименованию, а в файле оно написано чуть иначе (лишний пробел, другой регистр, сокращение). Решение — искать по стабильному ключу: артикулу, штрихкоду или коду. Если ключевых полей в файле нет, сначала добавьте их.

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

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

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

Типовая загрузка и чтение через ТабличныйДокумент.Прочитать работают без установленного Excel — платформа 1С сама разбирает формат xlsx. Без Excel не будет работать только COM-подключение. Как вариант, попросите присылать данные в CSV — этот формат читается везде и быстрее.

Насколько безопасно запускать внешние обработки из интернета?

Риск реальный: обработка выполняется с правами пользователя 1С и может изменить или удалить данные. Запускайте только обработки из доверенных источников, сначала на копии базы, и учитывайте, что в конфигурации может быть включена защита от опасных действий — она запросит подтверждение при открытии файла .epf.

Итог

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

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