Выгрузка контрагентов из 1С:Предприятие в Excel — одна из самых востребованных операций среди бухгалтеров, менеджеров по продажам и аналитиков. Без этого невозможно сформировать отчёты для налоговой, провести сверку с партнёрами или перенести данные в другие системы. Проблема в том, что стандартные инструменты 1С не всегда предлагают удобный экспорт: то колонки «разъезжаются», то выгружаются не все реквизиты, то формат файла требует доработки.
В этой статье мы разберём 5 проверенных способов выгрузки контрагентов — от простого копирования через буфер обмена до автоматизированного экспорта с помощью Запросов и внешних обработок. Вы узнаете, как сохранить иерархию групп, выгрузить дополнительные реквизиты (например, ИНН, КПП, адреса) и избежать типичных ошибок при работе с большими базами. Все инструкции актуальны для 1С:Бухгалтерия 3.0, 1С:Управление торговлей 11 и 1С:ERP 2.5 на платформе 8.3.
Особое внимание уделим скрытым настройкам экспорта, которые позволяют выгружать данные в нужном формате с первого раза — без последующей правки в Excel. Например, как сохранить ведущие нули в номерах телефонов или корректно отобразить даты регистрации.
1. Самый быстрый способ: выгрузка через «Все функции»
Если вам нужно срочно получить список контрагентов без сложных манипуляций, воспользуйтесь встроенным механизмом Все функции. Этот метод не требует прав администратора и работает даже в ограниченных пользовательских ролях.
Инструкция:
- 📌 Откройте справочник
Контрагенты(Покупки и продажи → КонтрагентыилиСправочники → Контрагенты). - 🔍 Примените нужный отбор (например, по группе или типу контрагента).
- 📋 Нажмите
Ещё → Все функции(илиПравка → Все функциив старых версиях). - 📑 Выберите
Выгрузить в ExcelилиСохранить как...(в зависимости от конфигурации).
Преимущества метода:
- ⚡ Мгновенный результат — файл формируется за 10–30 секунд.
- 🔄 Сохраняется текущий отбор (не придётся заново фильтровать данные в Excel).
- 📊 Поддерживаются основные реквизиты: наименование, ИНН, КПП, адрес.
⚠️ Внимание: В некоторых конфигурациях (например, 1С:БП 2.0) опция Выгрузить в Excel может отсутствовать. В этом случае используйте метод из следующего раздела.
Минусы:
- 🚫 Не выгружаются пользовательские реквизиты (например,
Тип ценыилиМенеджер). - 📉 Данные экспортируются «как есть» — без возможности настроить порядок колонок.
Если в выгруженном файле даты отображаются как числа (например, 44197 вместо 01.01.2021), откройте Excel, выделите колонку с датами и примените формат Дата через контекстное меню.
2. Универсальный метод: экспорт через «Печать» → «Список»
Этот способ подходит для всех конфигураций 1С:Предприятие 8.3 и позволяет гибко настраивать состав выгружаемых данных. В отличие от предыдущего метода, здесь можно выбрать, какие именно реквизиты контрагентов включать в отчёт.
Пошаговая инструкция:
- Откройте справочник
Контрагентыи установите нужный отбор. - Нажмите
Печать → Список(илиОтчёты → Список контрагентовв некоторых конфигурациях). - В открывшемся окне нажмите
Настройки → Добавить/Удалить поля. - Отметьте галочками реквизиты, которые нужно выгрузить (например,
Полное наименование,Юр./Физ. лицо,Банковские счета). - Нажмите
Сформировать, затемВыгрузить → Excel.
Что можно настроить:
- 📌 Группировка — например, сгруппировать контрагентов по регионам или типам.
- 🔢 Порядок сортировки — по алфавиту, дате создания или ИНН.
- 📊 Дополнительные реквизиты — например,
ДоговорыилиКонтактные лица.
| Реквизит в 1С | Название в Excel | Примечание |
|---|---|---|
Наименование |
Название | Сокращённое имя контрагента |
ПолноеНаименование |
Полное название | Юридическое название с организационно-правовой формой |
ИНН |
ИНН | Выгружается без ведущих нулей (требует правки в Excel) |
КПП |
КПП | Только для юридических лиц |
АдресРегистрации |
Юр. адрес | Может содержать многострочный текст |
⚠️ Внимание: Если в справочнике более 10 000 контрагентов, формирование отчёта может занять несколько минут. В этом случае рекомендуем использовать выгрузку через запрос.
3. Для продвинутых пользователей: выгрузка через внешнюю обработку
Если стандартные методы не устраивают (например, нужно выгрузить все реквизиты, включая пользовательские поля), используйте внешнюю обработку. Этот способ требует минимальных знаний 1С:Предприятие, но даёт максимальную гибкость.
Где взять обработку:
- 🔗 Скачайте готовую обработку с сайта Инфостарт или 1С-Сообщество (поиск по запросу «выгрузка контрагентов в Excel»).
- 🛠️ Напишите свою обработку в
Конфигураторе(инструкция ниже).
Как использовать готовую обработку:
- Скачайте файл с расширением
.epf. - В 1С откройте
Файл → Открытьи выберите скачанный файл. - Запустите обработку и следуйте инструкциям на экране (обычно нужно выбрать папку для сохранения и формат файла).
Пример кода для самостоятельной обработки (выгружает все реквизиты контрагентов):
Процедура ВыгрузитьВExcel(КаталогВыгрузки)
Таблица = Новый ТаблицаЗначений;
Таблица.Колонки.Добавить("Наименование");
Таблица.Колонки.Добавить("ИНН");
Таблица.Колонки.Добавить("КПП");
// Добавляем другие колонки по необходимости
Выборка = Справочники.Контрагенты.Выбрать();
Пока Выборка.Следующий() Цикл
НоваяСтрока = Таблица.Добавить();
НоваяСтрока.Наименование = Выборка.Наименование;
НоваяСтрока.ИНН = Выборка.ИНН;
НоваяСтрока.КПП = Выборка.КПП;
// Заполняем другие колонки
КонецЦикла;
Экспорт = Новый ЭкспортВExcel;
Экспорт.УстановитьДанные(Таблица);
Экспорт.Выгрузить(КаталогВыгрузки + "\Контрагенты.xlsx");
КонецПроцедуры
Преимущества метода:
- 🎛️ Полный контроль над составом выгружаемых данных.
- 🔄 Возможность автоматизировать выгрузку по расписанию.
- 📂 Поддержка форматов
.xlsx,.csv,.xml.
Как добавить пользовательские реквизиты в выгрузку?
Чтобы выгрузить дополнительные реквизиты (например, ТипКонтрагента или ДатаПоследнегоЗаказа), добавьте в код обработки строки:
Таблица.Колонки.Добавить("ТипКонтрагента");
...
НоваяСтрока.ТипКонтрагента = Выборка.ТипКонтрагента;
Полный список доступных реквизитов можно увидеть в Конфигураторе (откройте справочник Контрагенты и перейдите на закладку Данные).
4. Для больших баз: выгрузка через запрос
Если в вашей базе более 50 000 контрагентов, стандартные методы выгрузки могут «подвисать» или выдавать ошибку Недостаточно памяти. В этом случае поможет выгрузка через Запрос — она работает быстрее и стабильнее.
Инструкция:
- Откройте
Сервис → Запросы → Конструктор запросов. - Введите текст запроса (пример ниже).
- Нажмите
Выполнить, затемВыгрузить результат → Excel.
Пример запроса для выгрузки основных реквизитов:
ВЫБРАТЬ
Контрагенты.Ссылка КАК Ссылка,
Контрагенты.Наименование КАК Наименование,
Контрагенты.ПолноеНаименование КАК ПолноеНаименование,
Контрагенты.ИНН КАК ИНН,
Контрагенты.КПП КАК КПП,
Контрагенты.АдресРегистрации КАК Адрес
ИЗ
Справочник.Контрагенты КАК Контрагенты
Чтобы добавить фильтр (например, выгрузить только активных контрагентов), дополните запрос условием:
ГДЕ
Контрагенты.ПометкаУдаления = ЛОЖЬ
Советы по оптимизации:
- 🚀 Для ускорения выгрузки отключите ненужные колонки в запросе.
- 🗃️ Если нужно выгрузить
Банковские счетаилиДоговоры, используйтеЛЕВОЕ СОЕДИНЕНИЕ:
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.БанковскиеСчета КАК Счета
ПО Контрагенты.Ссылка = Счета.Владелец
⚠️ Внимание: При выгрузке через запрос не сохраняется иерархия групп (например, папки «Поставщики» и «Покупатели» будут игнорироваться). Если структура важна, используйте внешнюю обработку.
Убедитесь, что у вас есть права на выполнение запросов|Проверьте, что в запросе указаны все нужные реквизиты|Отключите ненужные колонки для ускорения выгрузки|Сохраните результат в формате .xlsx для совместимости-->
5. Автоматическая выгрузка по расписанию
Если вам нужно регулярно обновлять список контрагентов в Excel (например, для синхронизации с CRM или бухгалтерскими программами), настройте автоматическую выгрузку с помощью регламентных заданий.
Как настроить:
- Откройте
Администрирование → Поддержка и обслуживание → Регламентные задания. - Создайте новое задание с типом
Выполнение кода. - В поле
Кодвставьте обработчик выгрузки (пример ниже). - Установите расписание (например, ежедневно в 23:00).
Пример кода для регламентного задания:
Процедура Выполнить() Экспорт
КаталогВыгрузки = "C:\Export\Контрагенты_"+ТекущаяДата()+".xlsx";
Таблица = Новый ТаблицаЗначений;
// Формируем структуру таблицы
Таблица.Колонки.Добавить("Наименование");
Таблица.Колонки.Добавить("ИНН");
Таблица.Колонки.Добавить("Адрес");
// Заполняем данными
Выборка = Справочники.Контрагенты.Выбрать();
Пока Выборка.Следующий() Цикл
Строка = Таблица.Добавить();
Строка.Наименование = Выборка.Наименование;
Строка.ИНН = Выборка.ИНН;
Строка.Адрес = Выборка.АдресРегистрации;
КонецЦикла;
// Сохраняем в Excel
Экспорт = Новый ЭкспортВExcel;
Экспорт.УстановитьДанные(Таблица);
Экспорт.Выгрузить(КаталогВыгрузки);
КонецПроцедуры
Преимущества автоматической выгрузки:
- ⏰ Экономия времени — не нужно запускать экспорт вручную.
- 📅 Актуальные данные — файл всегда содержит свежую информацию.
- 🔄 Интеграция — можно настроить автоматическую загрузку файла в другие системы.
⚠️ Внимание: При настройке регламентного задания убедитесь, что у пользователя, от имени которого оно выполняется, есть права на чтение справочника Контрагенты и запись в указанный каталог.
Автоматическая выгрузка особенно полезна для интеграции 1С с внешними системами (например, Bitrix24, МойСклад или Контур.Диадок).
6. Решение типичных ошибок при выгрузке
Даже при правильной настройке экспорта могут возникать ошибки. Разберём самые распространённые проблемы и способы их решения.
| Ошибка | Причина | Решение |
|---|---|---|
| Файл не открывается в Excel (повреждён) | Неправильный формат или кодировка | Сохраните файл в формате .xlsx (не .xls) |
| Вместо кириллицы — кракозябры | Неверная кодировка при экспорте | Используйте UTF-8 или Windows-1251 |
| Не хватает памяти при выгрузке | Слишком много данных (>50 000 строк) | Разбейте выгрузку на части или используйте Запрос |
| Не выгружаются банковские счета | Отсутствует связь с регистром БанковскиеСчета |
Добавьте в запрос ЛЕВОЕ СОЕДИНЕНИЕ (см. раздел 4) |
| Дата отображается как число (например, 44197) | Excel интерпретирует дату как числовой формат | Примените формат Дата к колонке в Excel |
Дополнительные советы:
- 🔍 Если в выгруженном файле пустые ячейки, проверьте, заполнены ли соответствующие реквизиты в 1С.
- 📊 Для корректного отображения
ИННиКППустановите формат ячеекТекстовыйдо открытия файла. - 🔄 Если нужно обновить данные в существующем файле, используйте
Power Queryв Excel для связи с 1С.
Как исправить ошибку "Недостаточно памяти"?
1. Закройте все ненужные программы на компьютере.
2. Разбейте выгрузку на части (например, по алфавиту: А–М и Н–Я).
3. Используйте Запрос вместо стандартного экспорта (см. раздел 4).
4. Если проблема сохраняется, обратитесь к администратору 1С для увеличения памяти виртуальной машины.
FAQ: Ответы на частые вопросы
Можно ли выгрузить контрагентов вместе с их договорами?
Да, для этого нужно:
- Использовать
ЗапроссЛЕВЫМ СОЕДИНЕНИЕМтаблицыДоговорыКонтрагентов. - Или настроить внешнюю обработку, которая будет обходить связанные документы.
Пример запроса:
ВЫБРАТЬ
Контрагенты.Наименование КАК Контрагент,
Договоры.Номер КАК НомерДоговора,
Договоры.Дата КАК ДатаДоговора
ИЗ
Справочник.Контрагенты КАК Контрагенты
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ДоговорыКонтрагентов КАК Договоры
ПО Контрагенты.Ссылка = Договоры.Контрагент
Как выгрузить контрагентов с сохранением иерархии групп?
Стандартные методы не сохраняют структуру папок. Чтобы экспортировать иерархию:
- Используйте внешнюю обработку с рекурсивным обходом групп.
- Или выгрузите данные через
Запросс полемРодитель:
ВЫБРАТЬ
Контрагенты.Ссылка КАК Ссылка,
Контрагенты.Наименование КАК Наименование,
Контрагенты.Родитель КАК Группа
ИЗ
Справочник.Контрагенты КАК Контрагенты
В Excel потом можно будет отсортировать данные по колонке Группа.
Почему в Excel вместо ИНН отображается число с буквой E (например, 1.23E+11)?
Это происходит из-за автоматического преобразования длинных чисел в научный формат. Чтобы исправить:
- Выделите колонку с ИНН в Excel.
- Нажмите правой кнопкой →
Формат ячеек. - Выберите формат
Текстовый. - Если данные уже искажены, закройте файл без сохранения и повторите выгрузку, предварительно отформатировав колонку как текст.
Чтобы избежать проблемы, добавьте в код обработки перед выгрузкой строку:
Таблица.Колонки.Найти("ИНН").ТипЗначения = Новый ОписаниеТипов("Строка");
Как выгрузить контрагентов с их контактными лицами и телефонами?
Для этого нужно:
- Связать справочники
КонтрагентыиКонтактнаяИнформациячерез запрос. - Или использовать обработку, которая обходит связанные объекты.
Пример запроса:
ВЫБРАТЬ
Контрагенты.Наименование КАК Контрагент,
КонтактнаяИнформация.Тип КАК ТипКонтакта,
КонтактнаяИнформация.Представление КАК Контакт
ИЗ
Справочник.Контрагенты КАК Контрагенты
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ПО Контрагенты.Ссылка = КонтактнаяИнформация.Объект
В результате вы получите таблицу, где каждому контрагенту будут соответствовать все его контакты (телефоны, email, ФИО ответственных лиц).
Можно ли выгрузить контрагентов в Google Sheets?
Да, для этого:
- Выгрузите данные в
.csvили.xlsxлюбым из описанных способов. - Откройте Google Sheets и нажмите
Файл → Импорт. - Выберите файл и укажите параметры импорта (разделитель, кодировку).
Для автоматической синхронизации можно использовать:
- 🔗 1С:Облачный архив (платно).
- 🤖 Zapier или Make (ex-Integromat) для связки 1С и Google Sheets.