Автоматизация · 11 мин
Как подключить Excel к 1С: рабочие способы и пошаговая настройка
Практическое руководство по подключению Excel к 1С: загрузка и выгрузка данных, COM-соединение, внешние обработки, типичные ошибки и проверка результата.
Подключить Excel к 1С можно несколькими способами: от простой вставки таблицы через буфер обмена до полноценного обмена данными через COM-соединение или внешние обработки. Выбор зависит от задачи: разовая загрузка прайса не требует программирования, а регулярный обмен номенклатурой и ценами лучше автоматизировать.
Большинство типовых конфигураций (1С:Бухгалтерия, 1С:Управление торговлей, 1С:ERP) уже содержат встроенные механизмы загрузки из табличных документов. Они покрывают типовые сценарии: загрузку номенклатуры, цен, банковских выписок, табелей. Программная интеграция нужна там, где требуется нестандартная структура файла или двусторонний обмен.
Перед началом работы определите направление обмена: из Excel в 1С (загрузка справочников, документов), из 1С в Excel (выгрузка отчётов, прайсов) или двусторонняя синхронизация. От этого зависит инструмент и объём подготовительной работы.
Какой способ подключения выбрать под вашу задачу
Универсального метода нет — каждый вариант имеет свои ограничения по скорости, надёжности и требованиям к навыкам. Разовая операция и ежедневный обмен требуют разных решений.
Сравнение способов подключения
Подходит для разового переноса небольших таблиц в табличные части документов. Ограничение: ручная работа, нет контроля дублей.
Встроена в конфигурации на БСП. Подходит для справочников и цен. Ограничение: только загрузка, шаблон колонок фиксирован.
Гибкая настройка под свой формат файла. Требует навыков программирования или готовой обработки.
Чтение Excel напрямую из кода 1С. Ограничение: нужен установленный Excel или драйвер ACE, медленно на больших файлах.
Самый простой обмен без установки Excel на сервере. Ограничение: теряется форматирование, только данные.
Если файл Excel приходит от поставщика еженедельно в одном формате — потратьте время один раз на настройку обработки. Если данные нужно перенести один раз при переходе на 1С — достаточно типовой загрузки или даже ручной вставки.
Загрузка данных из Excel в 1С типовыми средствами
В конфигурациях на базе Библиотеки стандартных подсистем (БСП) есть универсальная обработка «Загрузка данных из табличного документа». Она находится в разделе «Администрирование» → «Обслуживание» или через «Все функции» → «Обработки». Доступ к ней требует прав администратора или настройщика.
Принцип работы: вы открываете файл Excel (обработка сама прочитает xlsx или вы вставляете данные из буфера), указываете, какая колонка соответствует какому реквизиту справочника, и запускаете загрузку. Программа ищет существующие элементы по ключевым полям (например, по артикулу или ИНН) и либо обновляет их, либо создаёт новые.
- 1Подготовьте файл: первая строка — заголовки колонок, без объединённых ячеек и пустых строк внутри данных.
- 2Откройте «Администрирование» → «Загрузка данных из табличного документа».
- 3Выберите вид загружаемых данных (например, «Номенклатура») и откройте файл Excel.
- 4Сопоставьте колонки файла реквизитам справочника; ключевое поле (артикул/наименование) отметьте как поле поиска.
- 5Нажмите «Загрузить» и проверьте протокол: сколько элементов создано, сколько обновлено, сколько пропущено с ошибками.
Для загрузки цен, остатков и банковских выписок в типовых конфигурациях есть отдельные специализированные механизмы: «Загрузка цен поставщика», «Клиент-банк» и другие. Они уже знают структуру своих данных и требуют меньше настройки, чем универсальная обработка.
Выгрузка данных из 1С в Excel
Обратная задача решается проще. Любой табличный документ в 1С — отчёт, прайс-лист, список документов — сохраняется в Excel через кнопку «Сохранить» или меню «Файл» → «Сохранить как» с выбором формата «Лист Excel (*.xlsx)». Форматирование, группировки и итоги при этом сохраняются.
Для списков справочников и документов работает команда «Вывести список» (кнопка «Ещё» в форме списка): программа формирует табличный документ с выбранными колонками, который затем сохраняется в Excel. Это удобно для выгрузки контрагентов, номенклатуры, заказов за период.
Если выгрузка нужна регулярно по расписанию — настраивается регламентное задание, которое формирует отчёт и сохраняет файл в сетевую папку или отправляет по электронной почте. Это уже требует настройки со стороны администратора или программиста.
Программное подключение: COM и чтение файлов из кода 1С
Когда типовых средств не хватает, используют встроенный язык 1С. Классический способ — COM-объект Excel.Application: код 1С запускает Excel, открывает файл и читает ячейки напрямую. Метод требует установленного Microsoft Excel на компьютере, где выполняется код, и работает медленно на больших файлах, но даёт полный доступ к листам, форматам и формулам.
Попытка
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 как «живой» формат для двусторонней синхронизации подходит плохо из-за блокировок файла и отсутствия контроля версий.
Как выбрать действие
Проверка результата и типичные ошибки
После любой загрузки сверяйте контрольные итоги: количество строк в файле против количества созданных и обновлённых элементов, суммы по документам, случайную выборку из 5–10 позиций с ручной сверкой цен и наименований. Протокол загрузки типовой обработки показывает пропущенные строки с причинами — не игнорируйте его.
Отдельная группа проблем — кодировка и региональные настройки при работе через CSV: разделитель (точка с запятой или запятая) и десятичный разделитель зависят от региональных настроек Windows. Если после загрузки цены «уехали» на два порядка, проверьте, не воспринялась ли запятая как разделитель тысяч.
Как проверить результат
Совпадает с числом строк данных в файле (минус заголовок)
Расхождение без объяснения в протоколе
Отчёт по дублям (поиск по артикулу/ИНН) пуст
Несколько элементов с одинаковым ключевым полем
Цены и наименования в 1С совпадают с файлом
Сдвиг колонок, обрезанные строки, нули вместо чисел
Нет ошибок за период загрузки
Ошибки преобразования типов или блокировок
Часто задаваемые вопросы
Можно ли подключить Excel к 1С без программиста?
Да, для типовых задач: загрузка справочников через встроенную обработку «Загрузка данных из табличного документа» и выгрузка отчётов кнопкой «Сохранить как» не требуют программирования. Понадобятся только права доступа и аккуратно подготовленный файл. Программист нужен для нестандартных форматов и автоматического обмена по расписанию.
Работает ли загрузка из Excel в файловой и клиент-серверной 1С одинаково?
Типовая загрузка работает одинаково. Различия появляются при программном чтении файлов: в клиент-серверном варианте код выполняется на сервере, поэтому файл должен быть доступен с сервера, а COM-объект Excel требует установки Office именно на сервере, что обычно не рекомендуется. Для сервера предпочтительнее чтение через ТабличныйДокумент или CSV.
Почему при загрузке создаются дубли номенклатуры?
Почти всегда причина в поле поиска: обработка ищет существующий элемент по наименованию, а в файле оно написано чуть иначе (лишний пробел, другой регистр, сокращение). Решение — искать по стабильному ключу: артикулу, штрихкоду или коду. Если ключевых полей в файле нет, сначала добавьте их.
Можно ли загружать данные из Excel в документы, а не только в справочники?
Да, но типовая универсальная обработка ориентирована в первую очередь на справочники и табличные части. Для документов в типовых конфигурациях часто есть свои механизмы (загрузка выписок, счетов от поставщиков через ЭДО). Нестандартную загрузку документов делают внешней обработкой с заполнением табличной части по строкам файла.
Что делать, если Excel не установлен на компьютере с 1С?
Типовая загрузка и чтение через ТабличныйДокумент.Прочитать работают без установленного Excel — платформа 1С сама разбирает формат xlsx. Без Excel не будет работать только COM-подключение. Как вариант, попросите присылать данные в CSV — этот формат читается везде и быстрее.
Насколько безопасно запускать внешние обработки из интернета?
Риск реальный: обработка выполняется с правами пользователя 1С и может изменить или удалить данные. Запускайте только обработки из доверенных источников, сначала на копии базы, и учитывайте, что в конфигурации может быть включена защита от опасных действий — она запросит подтверждение при открытии файла .epf.
Что важно запомнить
Разовые задачи решаются типовой обработкой загрузки из табличного документа и сохранением отчётов в Excel. Регулярный обмен стоит автоматизировать внешней обработкой с жёстким шаблоном файла и поиском элементов по стабильному ключу. Перед любой массовой загрузкой делайте копию базы и сверяйте контрольные итоги после неё.