Перенос таблиц Excel в 1С:Предприятие 8.3 — справочники, документы и макеты

· 10 мин

Содержание

Чтобы загрузить таблицу из Excel в 1С 8.3, откройте список нужного справочника или табличную часть документа и вызовите команду загрузки из файла: 1С покажет данные, предложит сопоставить колонки с полями и найдёт совпадения. Если нужно перенести в конфигурацию готовый макет печатной формы, откройте файл .xlsx прямо в конфигураторе как табличный документ и скопируйте ячейки в макет.

Прайс от поставщика на 800 строк, список контрагентов из старой программы, бланк договора, нарисованный в Excel, — всё это переносится без ручного набора. Ниже порядок действий для каждого случая и то, на чём загрузка чаще всего спотыкается.

Подготовка таблицы Excel к загрузке в 1С

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

Приведите файл к виду «одна строка — один объект»:

  1. Оставьте одну строку заголовков. Шапку прайса с логотипом, адресом и датой удалите или вынесите на другой лист.
  2. Разъедините объединённые ячейки. В объединённой области значение хранится только в первой ячейке, остальные 1С прочитает пустыми.
  3. Уберите промежуточные итоги и пустые строки между группами. Строка «Итого по разделу» превратится в новую номенклатуру с таким названием.
  4. Замените формулы значениями: выделите столбец, скопируйте и вставьте как значения. Так вы увидите то же, что прочитает программа.
  5. Проверьте форматы чисел. Цена 1 250,00 с неразрывным пробелом или с текстом «руб.» не распознается как число.
  6. ИНН, КПП, артикулы и штрихкоды храните как текст. Иначе Excel срежет ведущие нули или запишет штрихкод в виде 4,6E+12.
  7. Сохраните файл в .xlsx. Старый .xls платформа тоже читает, но с .xlsx проблем меньше.

Один лист — одна загрузка. Если в книге номенклатура и остатки лежат на разных листах, загружайте их отдельно, в правильном порядке: сначала справочник, потом документ, который на него ссылается.

Тип данныхКак оформить в ExcelЧто будет при ошибке
НаименованиеТекст без лишних пробелов по краямДубли «Болт М8» и «Болт М8 »
Количество, ценаЧисловой формат, десятичная запятаяПустое значение или ноль
ДатаФормат даты, не текстДата не распознана
ИНН, артикул, штрихкодТекстовый форматПотеря нулей, экспоненциальная запись
Единица измеренияКак в классификаторе 1С: «шт», «кг»Не найдена при сопоставлении

Стандартная загрузка из файла в типовых конфигурациях

В актуальных релизах Бухгалтерии предприятия 3.0, Управления торговлей 11 и других конфигураций на Библиотеке стандартных подсистем загрузка встроена в формы. Отдельную обработку искать не нужно.

Загрузка в справочник

  1. Откройте список справочника, например Справочники → Номенклатура в БП 3.0.
  2. В командной панели списка найдите команду загрузки. Она называется «Загрузить» или «Загрузить из файла», в части релизов спрятана в меню «Ещё».
  3. Откроется помощник загрузки данных. Нажмите кнопку выбора файла и укажите таблицу Excel либо скопируйте строки из Excel и вставьте их в поле помощника через Ctrl+V.
  4. Укажите, какая колонка таблицы соответствует какому реквизиту: наименование, артикул, единица, ставка НДС.
  5. Перейдите к следующему шагу. Программа покажет, какие строки она сопоставила с существующими элементами, а какие создаст как новые.
  6. Проверьте результат и завершите загрузку.

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

Загрузка в табличную часть документа

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

Типичный сценарий — поступление товаров по прайсу поставщика:

  • 📄 создайте документ поступления, заполните шапку: контрагент, договор, склад;
  • 📥 загрузите товары из Excel в табличную часть;
  • 🔍 проверьте строки, где номенклатура не найдена, и решите, создавать её или выбрать существующую;
  • ✅ проверьте итоговую сумму документа с суммой накладной и проведите документ.

Загрузка в документ не создаёт справочник «на лету» во всех конфигурациях одинаково. Если номенклатуры много новой, надёжнее сначала загрузить её в справочник, а потом уже заполнять документ.

Универсальная обработка для старых и нетиповых баз

Если в конфигурации нет встроенной команды, используют внешнюю обработку «Загрузка данных из табличного документа» (ЗагрузкаДанныхИзТабличногоДокумента.epf). Она распространяется на диске ИТС для управляемых форм и открывается через Файл → Открыть в режиме 1С:Предприятие.

Обработка умеет загружать в справочник, в табличную часть или в регистр сведений . Для каждой колонки задаётся реквизит, способ поиска и значение по умолчанию.

Перед загрузкой сотен записей в рабочую базу сделайте резервную копию или потренируйтесь на копии базы. Отменить массовую загрузку одной кнопкой нельзя: созданные элементы придётся помечать на удаление вручную.

Сопоставление колонок Excel с реквизитами 1С

Сопоставление — главный шаг загрузки. От него зависит, найдёт ли 1С существующий товар или создаст дубль.

Как программа ищет существующие элементы

Помощник ищет совпадение по тем полям, которые вы указали как ключевые. Для номенклатуры это обычно артикул или наименование, для контрагентов — ИНН.

Правило простое: ищите по самому уникальному полю. Наименования пишут по-разному, а ИНН и артикул одинаковы везде.

СправочникЛучшее поле для поискаЗапасной вариант
НоменклатураАртикул или штрихкодНаименование
КонтрагентыИНН (+ КПП для филиалов)Наименование
Физические лицаИНН или СНИЛСФИО + дата рождения
Склады, подразделенияНаименование—

Ссылочные поля

Колонка «Единица измерения» или «Группа» в Excel — это текст, а в 1С — ссылка на другой справочник. Программа ищет элемент по представлению. Если в файле «шт.», а в классификаторе «шт», связь не найдётся.

Поэтому перед загрузкой сверьте значения таких колонок со справочниками в базе. Быстрый способ — построить в Excel сводную таблицу по колонке и увидеть все уникальные значения.

Сопоставление полей
Артикул→Номенклатура.Артикул (поле поиска)
Наименование→Номенклатура.Наименование
Ед. изм.→Справочник «Единицы измерения»
Ставка НДС→Ставка НДС номенклатуры
Группа→Родитель (папка справочника)
Цена закупки→Цена в табличной части документа

Строки, которые не сопоставились

После сопоставления помощник разделяет строки на найденные, новые и проблемные. У проблемных строк вы можете вручную выбрать элемент из справочника или исключить строку из загрузки.

Не пропускайте этот шаг. Десять нераспознанных строк в прайсе на 500 позиций — это десять будущих дублей, которые потом придётся объединять.

Перенос макета из Excel в табличный документ 1С

Если под «макетом» понимается бланк печатной формы или отчёта, нарисованный в Excel, его переносят не загрузкой данных, а через табличный документ. Платформа 1С 8.3 умеет открывать файлы Excel как табличные документы.

В конфигураторе

  1. Откройте конфигурацию и у нужного объекта (документа, обработки, отчёта) или в ветке «Общие макеты» добавьте макет с типом «Табличный документ».
  2. Через Файл → Открыть выберите файл .xlsx. Конфигуратор откроет его в отдельном окне как табличный документ.
  3. Выделите в этом окне нужный диапазон или весь лист и скопируйте его.
  4. Перейдите в пустой макет и вставьте ячейки.
  5. Проверьте ширину колонок, высоту строк, шрифты и границы. Они переносятся, но не всегда точно.
  6. Разметьте именованные области (шапка, строка, подвал) и задайте параметры ячеек, в которые программа будет подставлять значения.

Сам файл Excel можно хранить в конфигурации как есть. Для этого создайте макет с типом «Двоичные данные» и выберите файл. В коде такой макет получают как двоичные данные и записывают во временный файл — так удобно хранить шаблоны выгрузки.

Без доработки типовой конфигурации

Менять типовую конфигурацию ради одного бланка — значит снять её с полной поддержки и усложнить обновления. Практики делают иначе:

  • 🧩 расширение конфигурации — макет добавляют или подменяют в расширении, основная конфигурация остаётся на поддержке (расширения работают с платформы 8.3.6);
  • 📑 внешняя печатная форма — обработка с макетом подключается через Администрирование → Печатные формы, отчеты и обработки;
  • ✏️ пользовательский макет — в том же разделе есть список «Макеты печатных форм», где типовой макет можно изменить без конфигуратора.

В режиме 1С:Предприятие файл Excel тоже открывается через Файл → Открыть (меню с тремя полосками в левом верхнем углу). Его можно просмотреть, скопировать ячейки и вставить в редактируемый макет печатной формы.

Ошибки при загрузке из Excel и как их разобрать

Встроенный помощник после загрузки показывает, сколько строк создано, обновлено и пропущено. Если что-то пошло не так, начните с пропущенных строк: там обычно видна причина.

Диагностика: выберите симптом

После любой массовой загрузки проверьте результат выборочно. Отсортируйте справочник по дате создания (если в списке есть такая колонка) или отберите элементы новой группы и откройте 5–10 карточек.

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

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

Способы чтения файла

СпособКогда подходитОграничения
ТабличныйДокумент.ПрочитатьПочти всегда, файл .xlsxЧитает только значения ячеек, без формул
COM-объект Excel.ApplicationНужны формулы, макросы, форматированиеExcel должен стоять там, где выполняется код; медленно
Помощник загрузки БСПРазовые загрузки пользователемНе для регулярного запуска по расписанию

Чтение через табличный документ не требует установленного Excel ни на клиенте, ни на сервере. Это главный довод в его пользу.

Пример чтения файла

Пример ниже выполняется на сервере: файл передан с клиента во временное хранилище. Код читает первую и вторую колонки, начиная со второй строки (первая — заголовки).

&НаСервере
Процедура ЗагрузитьИзExcelНаСервере(АдресФайла)

    ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайла);
    ИмяФайла = ПолучитьИмяВременногоФайла("xlsx");
    ДвоичныеДанные.Записать(ИмяФайла);

    ТабДок = Новый ТабличныйДокумент;
    ТабДок.Прочитать(ИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Значение);

    Для НомерСтроки = 2 По ТабДок.ВысотаТаблицы Цикл
        Артикул = СокрЛП(ТабДок.Область(НомерСтроки, 1, НомерСтроки, 1).Текст);
        Наименование = СокрЛП(ТабДок.Область(НомерСтроки, 2, НомерСтроки, 2).Текст);
        Если ПустаяСтрока(Артикул) Тогда
            Продолжить;
        КонецЕсли;
        Сообщить(СтрШаблон("Строка %1: %2 — %3",
            Формат(НомерСтроки, "ЧГ=0"), Артикул, Наименование));
    КонецЦикла;

    УдалитьФайлы(ИмяФайла);

КонецПроцедуры

Дальше на месте Сообщить пишут поиск по артикулу и создание или обновление элемента. Пустые строки пропускаются, поэтому «хвост» пустого листа не создаст мусор.

Параметр СпособЧтенияЗначенийТабличногоДокумента.Значение читает типизированные значения ячеек. Если нужен именно текст, как его видно в Excel, читайте свойство .Текст области, как в примере.

Регулярная загрузка

Для ежедневного прайса поставщика логику из обработки переносят в расширение и вызывают из регламентного задания. Файл забирают из сетевой папки, к которой есть доступ у пользователя, под которым работает сервер 1С. В файловом варианте базы задание выполняется только при запущенном клиенте, поэтому для расписания лучше клиент-серверная база.

Перед запуском регулярной загрузки
Выполнено: 0 / 5

Частые вопросы о загрузке из Excel в 1С

Можно ли загрузить в 1С файл в формате CSV?
Да. Помощник загрузки и табличный документ читают CSV, но проверьте кодировку и разделитель: при неверной кодировке кириллица превратится в нечитаемые символы.
Нужен ли установленный Excel, чтобы загрузить файл в 1С?
Нет. Платформа 8.3 читает .xlsx самостоятельно. Excel нужен только при загрузке через COM-объект.
Как загрузить начальные остатки из Excel?
Откройте документ ввода остатков по нужному разделу учёта и загрузите таблицу в его табличную часть той же командой загрузки. Номенклатура и контрагенты к этому моменту уже должны быть в справочниках.
Загрузятся ли картинки товаров из Excel?
Нет, помощник загружает только значения ячеек. Изображения добавляют отдельно в карточки или пишут обработку, которая берёт файлы из папки по имени артикула.
Можно ли отменить массовую загрузку?
Кнопки отмены нет. Созданные элементы отбирают по группе или дате и помечают на удаление, поэтому перед большой загрузкой нужна резервная копия.