Экспорт данных о товарах из 1С:Предприятие в Excel — одна из самых востребованных операций среди бухгалтеров, менеджеров по продажам и владельцев бизнеса. Без этого не обойтись при анализе ассортимента, формировании прайс-листов, миграции на другие платформы или просто для удобной работы с номенклатурой вне системы. Однако стандартные инструменты 1С не всегда предлагают удобные решения для выгрузки — особенно если требуется не просто список, а данные с дополнительными реквизитами, ценами или остатками.
В этой статье разберём 5 рабочих способов выгрузить товары из 1С в Excel (включая XLS и XLSX), от простейших до продвинутых, с учётом особенностей популярных конфигураций: 1С:Управление торговлей 11, 1С:ERP 2.5, 1С:Розница 2.3 и 1С:Бухгалтерия 3.0. Каждый метод проиллюстрируем скриншотами (описаниями интерфейса) и предостережём о типичных ошибках.
Если вам нужно срочно получить данные — начните с первого способа (экспорт через отчёт). Для регулярной выгрузки с настройкой полей подойдёт третий метод (универсальный обмен данными). А если требуется автоматизация — обратите внимание на последний раздел про программный экспорт.
1. Быстрый экспорт через отчёт «Номенклатура»
Самый простой способ — использовать встроенные отчёты 1С. Он не требует прав администратора и подходит для разовой выгрузки базового списка товаров. Рассмотрим на примере 1С:Управление торговлей 11.4.
Перейдите в раздел Отчёты → Стандартные отчёты → Номенклатура. В открывшемся окне:
- 📌 Установите период (если нужно выгрузить данные за конкретный промежуток времени).
- 🔍 В поле «Группировка» выберите
Номенклатура(илиНоменклатура (иерархия), если требуется структура папок). - 📊 Нажмите кнопку
Сформировать, затем —Ещё → Выгрузить в Excel. - 💾 Сохраните файл в удобное место.
⚠️ Внимание: Этот метод выгружает только те поля, которые отображаются в отчёте. Если нужны дополнительные реквизиты (например, Артикул, Вес или Поставщик), их придётся добавлять в настройки отчёта через Показатели.
Если в выгруженном файле вместо кириллицы отображаются "кракозябры", перед сохранением в Excel выберите кодировку Юникод (UTF-8) или Windows-1251 (в зависимости от версии 1С).
| Поле в 1С | Соответствие в Excel | Примечание |
|---|---|---|
Наименование |
Столбец A | Основное название товара |
Артикул |
Столбец B | Добавляется через настройки отчёта |
Цена продажи |
Столбец C | Актуальная цена из прайс-листа |
Остаток |
Столбец D | Только при выборе группировки по складам |
2. Выгрузка через обработку «Печать прайс-листа»
Если требуется экспортировать не только список товаров, но и цены, остатки или изображения, используйте обработку Печать прайс-листа. Она есть в большинстве торговых конфигураций 1С (УТ, ERP, Розница).
Алгоритм:
- Откройте
Номенклатура → Печать → Печать прайс-листа. - В окне обработки настройте:
- 📋 Формат выгрузки: выберите
ExcelилиExcel (с картинками). - 🏷️ Цены: укажите нужный тип цен (например,
РозничнаяилиОптовая). - 📦 Остатки: отметьте галочкой, если требуется информация по складам.
- 📋 Формат выгрузки: выберите
Сформировать, затем Выгрузить в файл.⚠️ Внимание: В некоторых конфигурациях (например, 1С:Бухгалтерия 3.0) обработка Печать прайс-листа может отсутствовать. В этом случае используйте универсальный обмен данными.
3. Универсальный обмен данными (для опытных пользователей)
Этот метод подходит для регулярной выгрузки с гибкой настройкой полей. Он работает через механизм универсального обмена данными, доступный в большинстве конфигураций на базе 1С:Предприятие 8.3.
Инструкция:
- Перейдите в
Администрирование → Обмен данными → Универсальный обмен данными. - Создайте новый обмен:
- 📤 Тип обмена: выберите
Выгрузка в Excel. - 📂 Объект обмена: укажите
Номенклатура. - ⚙️ Настройки: нажмите
Дополнительнои выберите нужные поля (например,Артикул,Единица измерения,Вес).
- 📤 Тип обмена: выберите
- Запустите обмен кнопкой
Выполнить. - 📄 Только основных реквизитов (название, артикул, цена).
- 📊 Полного справочника с остатками и поставщиками.
- 🖼️ Товаров с изображениями (если конфигурация поддерживает экспорт картинок).
- 📥 ВыгрузкаНоменклатурыВExcel.epf — универсальная обработка для УТ 11 и ERP 2.5.
- 📊 ЭкспортВExcelПлюс — поддерживает выгрузку с картинками и многоуровневой иерархией.
- 🔄 ОбменДаннымиExcel — для двустороннего обмена (импорт/экспорт).
Преимущество этого метода — возможность сохранять шаблоны обмена для повторного использования. Например, можно создать отдельные шаблоны для выгрузки:
Проверьте права доступа (требуется роль "Администратор" или "Полные права")
Создайте резервную копию базы (на случай ошибок)
Убедитесь, что на ПК установлен Microsoft Excel или альтернативный табличный редактор
Закройте все открытые сеансы 1С во избежание конфликтов-->
4. Выгрузка через конфигуратор (для программистов)
Если стандартные инструменты не подходят, можно написать собственный скрипт на встроенном языке 1С. Этот способ требует знаний программирования, но даёт максимальную гибкость. Например, так можно выгрузить товары с фильтрацией по группам, складам или другим критериям.
Пример кода для выгрузки номенклатуры в Excel:
Процедура ВыгрузитьНоменклатуруВExcel()
// Создаём объект Excel
Excel = Новый COMОбъект("Excel.Application");
Книга = Excel.Workbooks.Add();
Лист = Книга.Worksheets(1);
// Заголовки столбцов
Лист.Cells(1, 1).Value = "Артикул";
Лист.Cells(1, 2).Value = "Наименование";
Лист.Cells(1, 3).Value = "Цена";
// Получаем данные из 1С
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Номенклатура.Артикул,
| Номенклатура.Наименование,
| Номенклатура.ЦенаПродажи КАК Цена
|ИЗ
| Справочник.Номенклатура КАК Номенклатура";
Результат = Запрос.Выполнить();
Строка = 2; // Начинаем со второй строки
// Заполняем данными
Пока Результат.Следующий() Цикл
Лист.Cells(Строка, 1).Value = Результат.Артикул;
Лист.Cells(Строка, 2).Value = Результат.Наименование;
Лист.Cells(Строка, 3).Value = Результат.Цена;
Строка = Строка + 1;
КонецЦикла;
// Сохраняем файл
ПутьКФайлу = "C:\Temp\Номенклатура.xlsx";
Книга.SaveAs(ПутьКФайлу);
Excel.Quit();
КонецПроцедуры
⚠️ Внимание: Для работы этого кода на компьютере должен быть установлен Microsoft Excel (или эмулятор COM-объектов, например, LibreOffice с настройками совместимости). Также требуются права на изменение конфигурации.
Как запустить код в конфигураторе?
1. Откройте 1С в режиме Конфигуратор (запуск с удержанием клавиши Shift).
2. Перейдите в Файл → Новый → Модуль.
3. Вставьте код и нажмите F5 для выполнения.
4. Файл появится по указанному пути (в примере — C:\Temp\Номенклатура.xlsx).
5. Автоматическая выгрузка через внешние обработки
Для регулярного экспорта (например, ежедневной выгрузки остатков в Excel для менеджеров) удобно использовать внешние обработки. Их можно скачать с портала 1С:ИТС или из проверенных источников (например, Infostart).
Популярные обработки:
Как установить обработку:
- Скачайте файл с расширением
.epf. - В 1С откройте
Файл → Открытьи выберите скачанный файл. - Следуйте инструкциям мастера установки.
Внимание: перед использованием сторонних обработок проверьте их на тестовой базе! Некоторые скрипты могут содержать вредоносный код или конфликтовать с вашей конфигурацией.
Внешние обработки экономят время, но требуют осторожности. Всегда тестируйте их на копии базы перед использованием в рабочей системе.
Частые ошибки и их решения
Даже при следовании инструкциям пользователи сталкиваются с проблемами. Рассмотрим типичные ошибки и способы их устранения.
| Ошибка | Причина | Решение |
|---|---|---|
| Файл Excel открывается с иероглифами | Неверная кодировка при сохранении | Выберите кодировку UTF-8 или Windows-1251 в настройках выгрузки |
| В файле только 65 536 строк (ограничение старого Excel) | Формат .xls вместо .xlsx | Сохраняйте в формате Excel 2007+ (.xlsx) |
| Не выгружаются цены или остатки | Отсутствуют права на просмотр данных | Проверьте настройки ролей в Администрирование → Пользователи |
| Обработка зависает при большом объёме данных | Слишком много товаров (>50 000) | Выгружайте данные порциями (по группам номенклатуры) |
⚠️ Внимание: Если при выгрузке через конфигуратор появляется ошибка Не удалось создать COM-объект "Excel.Application", убедитесь, что:
- 🖥️ На компьютере установлен Microsoft Office (или альтернатива с поддержкой COM).
- 🔧 В настройках DCOM (для Windows) разрешён доступ к Excel.
- 🛡️ Антивирус не блокирует взаимодействие 1С с внешними приложениями.
FAQ: Ответы на частые вопросы
Можно ли выгрузить товары с картинками в Excel?
Да, но не все конфигурации поддерживают этот функционал "из коробки". В 1С:Управление торговлей 11 и ERP 2.5 для этого используйте обработку Печать прайс-листа с опцией Excel (с картинками). В других случаях потребуется доработка через конфигуратор или внешнюю обработку.
Обратите внимание: изображения в Excel вставляются как объекты, что увеличивает размер файла. Для больших каталогов лучше выгрузить картинки отдельно (в папку) и привязать их пути в таблице.
Как выгрузить товары с остатками по нескольким складам?
Используйте отчёт Ведомость по товарам на складах (Отчёты → Склад → Ведомость по товарам). В настройках отчёта:
- Укажите нужные склады в фильтре.
- Добавьте группировку по
НоменклатураиСклад. - Экспортируйте в Excel через кнопку
Выгрузить.
Если требуется сводная таблица (без дублирования товаров), используйте сводную таблицу Excel после выгрузки.
Почему в выгруженном файле пустые ячейки вместо цен?
Это происходит по трём причинам:
- Нет прав на просмотр цен. Проверьте настройки ролей пользователя в 1С.
- Не указан тип цен. В обработке выгрузки выберите конкретный тип (например,
Розничная цена). - Цены не заданы для номенклатуры. Убедитесь, что в справочнике
Номенклатуразаполнено полеЦена продажи.
Для диагностики откройте карточку товара в 1С и проверьте, отображается ли цена вручную.
Как автоматизировать выгрузку по расписанию?
Для автоматической выгрузки используйте:
- 📅 Регламентные задания (в 1С:
Администрирование → Регламентные задания). Настройте запуск обработки по расписанию. - 🤖 Внешние сервисы (например, 1С:Коннект или RPA-системы типа UiPath).
- 💻 Скрипты на PowerShell/Python, которые запускают 1С в фоновом режиме и выполняют экспорт.
Пример настройки регламентного задания:
// Код для регламентного задания (выгрузка каждый день в 23:00)
Процедура ВыгрузитьНоменклатуруАвтоматически() Экспорт
ПутьКФайлу = "C:\Exports\Номенклатура_" + ТекущаяДата() + ".xlsx";
// Здесь код выгрузки (аналогично разделу 4)
Сообщить("Выгрузка завершена: " + ПутьКФайлу);
КонецПроцедуры
Можно ли выгрузить товары из 1С в Google Таблицы?
Да, но не напрямую. Варианты:
- Через Excel. Выгрузите данные в .xlsx, затем загрузите файл в Google Диск (откроется как Google Таблица).
- Через API. Напишите скрипт на 1С, который отправляет данные в Google Sheets по HTTP-запросам (потребуется токен доступа).
- Через сервисы-коннекторы. Например, Zapier или Make (ex-Integromat) могут автоматизировать перенос данных из 1С в Google Таблицы.
⚠️ Для второго и третьего способов потребуются навыки программирования или помощь специалиста.