Справочники и Данные · 11 мин
Как выгрузить файл Excel в 1С
Как загрузить данные из Excel в 1С: типовая обработка, универсальный обмен, подготовка файла, сопоставление колонок, проверка результата и частые ошибки.
Загрузка данных из Excel в 1С — одна из самых частых задач при переходе на новую базу, обновлении справочников или переносе прайсов. В зависимости от конфигурации и релиза платформы есть несколько рабочих способов: встроенная обработка «Загрузка данных из файла», универсальная обработка «Универсальный обмен данными в формате XML», типовые механизмы обмена и программная загрузка через COM-объект Excel.
Выбор способа зависит от трёх факторов: какая у вас конфигурация (Управление торговлей, Бухгалтерия, ERP, самописная), что именно нужно загрузить (номенклатуру, контрагентов, документы, остатки) и сколько строк в файле. Для разовой загрузки справочника хватит типовых средств, для регулярного обмена лучше настроить обработку или правила конвертации.
Главная причина неудач — не сама загрузка, а плохо подготовленный файл: объединённые ячейки, формулы, пустые строки, разный формат чисел. Поэтому значительная часть работы происходит ещё в Excel, до запуска 1С.
Определите, что и куда будете загружать
До открытия любой обработки ответьте на два вопроса. Первый — какой объект 1С должен получить данные: справочник (номенклатура, контрагенты, договоры), документ (поступление, заказ, ввод остатков) или регистр сведений (цены, штрихкоды). Второй — есть ли в вашей конфигурации готовый механизм загрузки именно для этого объекта.
В большинстве типовых конфигураций на «Библиотеке стандартных подсистем» есть универсальная команда «Загрузить из файла», которая появляется в списках справочников и в табличных частях документов через меню «Ещё». Если такой команды нет — конфигурация либо старая, либо доработанная, и тогда понадобится внешняя обработка.
Отдельный случай — загрузка документов с движениями (например, накладных от поставщика). Типовая загрузка табличных частей не создаёт проводки автоматически в полном объёме: документ нужно будет провести и проверить результат. Для массового переноса документов между базами правильнее использовать обмен через XML, а не Excel.
Как выбрать способ загрузки
Подготовьте файл Excel к загрузке
Обработки 1С читают файл как плоскую таблицу: первая строка — заголовки колонок, дальше — данные, по одной строке на один элемент. Всё, что нарушает эту структуру, приведёт к ошибкам сопоставления или к мусору в базе.
Типовые проблемы, которые нужно устранить заранее: объединённые ячейки (разъедините и заполните значения вниз), многострочные шапки, промежуточные итоги, пустые строки-разделители, формулы (замените их значениями через «Специальную вставку»), скрытые листы и колонки с расчётами. Лучше всего создать в файле отдельный чистый лист только с данными для загрузки.
Особое внимание — форматам данных. Числа должны быть числами, а не текстом (текстовые числа часто не распознаются или теряют разделители). Даты — в едином формате, желательно ДД.ММ.ГГГГ. Артикулы и коды с ведущими нулями, наоборот, должны быть текстом, иначе Excel обрежет нули. Сохраните итоговый файл в формате .xlsx — старый .xls и .csv поддерживаются не всеми обработками одинаково корректно.
- 1Скопируйте нужные данные на новый лист, оставив одну строку заголовков
- 2Разъедините все объединённые ячейки и заполните образовавшиеся пустоты значениями
- 3Замените формулы значениями: выделить, скопировать, вставить как значения
- 4Удалите пустые строки, промежуточные итоги и строки с примечаниями
- 5Проверьте форматы: числа — числовые, даты — даты, коды с нулями — текст
- 6Сохраните файл в формате .xlsx под понятным именем
Загрузка через типовую обработку «Загрузка данных из файла»
В типовых конфигурациях (Управление торговлей 11, ERP, Комплексная автоматизация, Бухгалтерия 3.0) откройте нужный справочник, например «Номенклатура», и в меню «Ещё» выберите «Загрузить данные из файла». В некоторых конфигурациях обработка также доступна через раздел «НСИ и администрирование» → «Загрузка данных из файла» или «Покупки» → «Сервис».
Мастер загрузки работает по шагам. Сначала вы указываете файл — обработка покажет его содержимое в виде таблицы. Затем для каждой колонки файла выбираете, в какой реквизит 1С её сопоставить: наименование, артикул, единица измерения, ставка НДС и так далее. Колонки, которые не нужны, помечайте как «Не загружать».
Ключевой момент — настройка поиска существующих элементов. Укажите, по какому полю обработка должна определять, что элемент уже есть в базе: по коду, артикулу, наименованию или штрихкоду. Если поиск не настроить, при повторной загрузке получите дубли. После сопоставления запустите загрузку и дождитесь отчёта: сколько элементов создано, сколько обновлено, сколько строк пропущено с ошибками.
Сопоставление колонок и ключевые поля поиска
Ошибки сопоставления — главный источник проблем. Правило простое: каждая колонка файла должна попасть ровно в один реквизит, а смысл данных должен совпадать. Нельзя загружать наименование поставщика в поле «Наименование» номенклатуры или единицу измерения текстом в поле, где ожидается ссылка на классификатор.
Поля-ссылки (единица измерения, ставка НДС, группа номенклатуры, контрагент) обработка ищет в базе по значению из файла. Если в файле написано «шт.», а в классификаторе — «шт», элемент либо не найдётся, либо создастся дубль. Поэтому перед загрузкой приведите такие значения к точному виду, как они записаны в 1С.
Для контроля дублей выбирайте устойчивый ключ. Для номенклатуры это обычно артикул или штрихкод, для контрагентов — ИНН в сочетании с КПП. Наименование как ключ поиска ненадёжно: одна и та же позиция в файлах разных поставщиков написана по-разному.
Загрузка через внешние обработки и программный способ
Если типовой команды нет, используются внешние обработки загрузки из табличного документа. Их открывают через «Файл → Открыть» (в режиме толстого клиента) или подключают через «Дополнительные отчеты и обработки», если в конфигурации включён этот механизм. Логика работы та же: выбор файла, сопоставление колонок, загрузка.
Для разработчика доступен программный способ — чтение Excel через COM-объект или построитель табличного документа. Это оправдано, когда загрузка регулярная, файл имеет сложную структуру или нужна нестандартная логика поиска и создания объектов. Такой код должен писать специалист по 1С: ошибка в цикле записи может создать тысячи некорректных элементов.
// Чтение файла средствами платформы без COM
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать("C:\Данные\Номенклатура.xlsx", СпособЧтенияЗначенийТабличногоДокумента.Значение);
Для НомерСтроки = 2 По ТабДок.ВысотаТаблицы Цикл
Наименование = ТабДок.Область(НомерСтроки, 1).Текст;
// поиск и создание элемента справочника
КонецЦикла;Учтите ограничение: чтение через табличный документ на больших файлах (десятки тысяч строк) работает медленно и потребляет много памяти. Для таких объёмов файл лучше предварительно разбить на части или конвертировать в промежуточный формат.
Проверка результата после загрузки
Загрузка не считается завершённой, пока вы не проверили результат. Минимальный контроль: сравнить количество строк в файле с количеством созданных/обновлённых элементов, открыть несколько случайных элементов и сверить ключевые реквизиты, проверить отсутствие дублей через поиск по наименованию или артикулу.
Если загружались документы, дополнительно проверьте проведение и движения: откройте документ, посмотрите проводки или движения по регистрам, сверьте итоговые суммы с файлом. Для цен и остатков полезно сформировать соответствующий отчёт и сравнить итог с контрольной суммой из Excel.
Как проверить результат
Совпадает с числом строк данных в файле (за вычетом обоснованно пропущенных)
Элементов меньше — часть строк отклонена с ошибками; больше — возможны дубли
Реквизиты совпадают со значениями в файле, ссылочные поля заполнены корректными элементами
Поля пустые, в полях-ссылках новые мусорные элементы
Поиск по артикулу/ИНН не выдаёт повторов
Несколько элементов с одинаковым ключом — нужна свёртка и перенастройка поиска
Суммы по отчёту совпадают с контрольными итогами файла
Расхождения — искать непроведённые документы или ошибки в количестве и ценах
Частые ошибки и их устранение
Ошибка «Не найден лист» или пустая таблица при открытии файла обычно означает, что данные не на первом листе или лист защищён. Ошибки формата чисел и дат лечатся приведением форматов в Excel до загрузки. Ошибка «Файл занят другим процессом» — закройте файл в Excel перед загрузкой.
Если обработка зависает на большом файле, разбейте его на части по 5–10 тысяч строк и загружайте порциями. Если часть строк не загружается без видимой причины, откройте отчёт о загрузке — там по каждой строке указана причина отказа: не найдено значение ссылки, не заполнен обязательный реквизит, дубль по ключу поиска.
FAQ
Можно ли загрузить Excel в 1С:Бухгалтерию 8.3 без доработок?
Да. В 1С:Бухгалтерии 3.0 загрузка номенклатуры и контрагентов доступна через команду «Загрузить из файла» в форме списка справочника. Также есть загрузка выписки через «Клиент-банк». Для документов типовой универсальной загрузки из Excel нет — используются специализированные обработки или обмен с другими программами.
Почему после загрузки появились дубли номенклатуры?
Причина почти всегда в настройке поиска существующих элементов. Если поиск шёл по наименованию, а написание в файле отличалось от базы хотя бы пробелом, обработка создала новый элемент. Удалите дубли (лучше через обработку поиска и удаления дублей из состава конфигурации) и повторите загрузку с ключом поиска по артикулу или штрихкоду.
Какой формат файла лучше: xlsx, xls или csv?
Оптимален .xlsx: его корректно читают все современные обработки. Старый .xls тоже поддерживается, но имеет ограничение на число строк. CSV подходит для простых таблиц, однако требует правильной кодировки (UTF-8) и разделителя, иначе кириллица и разбор колонок «поедут».
Файл большой, обработка зависает. Что делать?
Разбейте файл на части по несколько тысяч строк и загружайте порциями. Убедитесь, что в файле нет формул и лишнего форматирования — они сильно замедляют чтение. Если загрузка идёт на сервере 1С, выполняйте её в нерабочее время, чтобы не влиять на пользователей.
Как загрузить из Excel цены или остатки товаров?
Цены загружаются через документ «Установка цен номенклатуры» — в его табличной части есть кнопка загрузки из файла, либо используется обработка «Загрузка цен из файла» в разделе закупок. Остатки вводятся документами ввода начальных остатков (в разделе помощника перехода или «НСИ и администрирование»), куда также можно загрузить таблицу из файла.
Нужно ли закрывать файл Excel перед загрузкой в 1С?
Да. Открытый в Excel файл блокируется, и обработка может не получить к нему доступ — появится ошибка чтения или загрузятся устаревшие данные. Сохраните и закройте файл, затем запускайте загрузку.
Что важно запомнить
Успешная загрузка Excel в 1С на 80% зависит от подготовки файла: плоская таблица, корректные форматы, никаких объединённых ячеек. Загружайте типовой командой «Загрузить из файла», настраивайте поиск по устойчивому ключу (артикул, ИНН, штрихкод), делайте копию базы перед массовой загрузкой и обязательно сверяйте результат по количеству строк и контрольным суммам.