Как перенести таблицу Excel в справочники и документы 1С 8.3 без ручного ввода
Содержание
Загрузить данные в 1С из Excel можно двумя способами. Первый — встроенная команда Загрузить в списке номенклатуры и над табличной частью «Товары» в документах БП 3.0 и УТ 11. Второй — внешняя обработка «Загрузка данных из табличного документа», которая умеет загружать в любой справочник, табличную часть или регистр сведений
.
Оба способа работают одинаково: вы вставляете таблицу, указываете, какая колонка Excel в какое поле 1С идёт, и по какому полю искать уже существующие элементы. Большая часть проблем при импорте возникает не в 1С, а в самом файле, поэтому начинать стоит с него.
Подготовка файла Excel перед загрузкой в 1С
Программа читает таблицу буквально. Объединённая ячейка, пробел в конце артикула или число, записанное текстом, — и строка не загрузится или создаст дубль.
Что сделать с таблицей
- Одна строка — один объект. Один товар, один контрагент, одна строка документа. Итоги, подзаголовки и пустые строки посередине удалите.
- Одна строка заголовка. Шапка из двух-трёх уровней с объединёнными ячейками ломает сопоставление. Оставьте одну строку с понятными названиями колонок.
- Разъедините все ячейки. Выделите лист целиком →
Главная → Объединить и поместить в центре → Отменить объединение ячеек. - Уберите лишние пробелы. Функция
=СЖПРОБЕЛЫ(A2)в соседней колонке, затем «Копировать → Вставить значения» поверх исходной. - Числа — числами. Цены и количества без пробелов-разделителей и без «руб.». Проверка простая: если
=СУММ()по колонке даёт ноль — значения записаны текстом. - Коды — текстом. ИНН, КПП, артикулы с ведущими нулями задайте форматом «Текстовый» до вставки данных. Иначе Excel превратит
0012345в12345, а ИНН из 12 цифр — в7,71E+11. - Значения ссылок — как в 1С. Единица измерения, ставка НДС, вид номенклатуры должны совпадать с тем, что уже есть в справочниках базы.
Типовые несовпадения значений
| Поле | В Excel часто пишут | Что ждёт 1С |
|---|---|---|
| Единица измерения | шт., штука, ШТ | наименование из справочника, обычно шт |
| Ставка НДС | 20, 0,2, 20 % | 20% |
| Вид номенклатуры | товар | точное название вида: Товары, Услуги |
| ИНН | число в экспоненте | 10 или 12 цифр текстом |
| Дата | 07.10.26 текстом | дата в формате ячейки «Дата» |
Сохраните файл в .xlsx. Если 1С не открывает файл напрямую, выделите диапазон в Excel, скопируйте и вставьте в табличный документ обработки через Ctrl+V. Этот способ срабатывает почти всегда.
Перед первой загрузкой сделайте резервную копию базы или потренируйтесь на копии. Массовую загрузку отменить одной кнопкой нельзя: созданные элементы придётся помечать на удаление вручную.
Встроенная команда «Загрузить» в типовых конфигурациях
В актуальных релизах БП 3.0 и УТ 11 загрузка из файла встроена прямо в формы. Отдельная обработка для самых частых задач не нужна.
| Что загружаем | Где команда в БП 3.0 | Где команда в УТ 11 |
|---|---|---|
| Номенклатура | Справочники → Товары и услуги → Номенклатура, кнопка Загрузить | НСИ и администрирование → НСИ → Номенклатура, кнопка Загрузить |
| Строки поступления | документ поступления, кнопка Загрузить над табличной частью «Товары» | документ «Приобретение товаров и услуг», кнопка над табличной частью «Товары» |
| Строки реализации | документ реализации, кнопка Загрузить над табличной частью | документ «Реализация товаров и услуг», кнопка над табличной частью |
Если кнопки над табличной частью не видно, загляните в меню Ещё — в разных релизах команда переезжает туда.
Как проходит загрузка встроенной командой
- Нажмите
Загрузить. Откроется форма с пустой таблицей и колонками, которые ждёт 1С. - Скопируйте данные из Excel и вставьте их в эту таблицу. Порядок колонок можно подогнать под форму или наоборот — сопоставить на следующем шаге.
- Нажмите
Далее. Программа покажет, какие строки она нашла в базе, какие создаст новыми, а какие не распознала. - Для нераспознанных строк выберите значение вручную или исправьте файл и вставьте заново.
- Нажмите
Загрузить данные(на последнем шаге кнопка может называться иначе — это финальная кнопка формы).
Плюс встроенного способа — проверка до записи. Вы видите результат сопоставления и можете отказаться от загрузки, ничего не испортив.
Универсальная обработка «Загрузка данных из табличного документа»
Когда встроенной команды нет — для контрагентов в ряде релизов, для договоров, цен, своих справочников, регистров сведений — используют универсальную обработку. Её распространяют через информационно-технологическое сопровождение (ИТС) вместе с другими стандартными обработками. Для 8.3 нужна версия под управляемые формы, файл с суффиксом УФ в имени.
Как открыть обработку
- Главное меню (кнопка с тремя полосками в левом верхнем углу) →
Файл → Открыть. - Выберите файл
.epf. - Если появится предупреждение о безопасности, подтвердите открытие. Внешние обработки из непроверенных источников не запускайте: они получают те же права, что и ваш пользователь.
Если пункта Открыть нет или выдаётся ошибка прав — у пользователя нет права на открытие внешних обработок. Это решает администратор базы.
Режимы загрузки
| Режим | Когда выбирать | Пример |
|---|---|---|
| Загрузка в справочник | создать или обновить элементы | номенклатура, контрагенты, склады |
| Загрузка в табличную часть | заполнить строки открытого документа | товары в поступлении, заказе |
| Загрузка в регистр сведений | записать данные по периодам и измерениям | цены, курсы, штрихкоды |
Порядок работы: выбрать режим → указать объект (например, справочник «Номенклатура») → вставить таблицу на вкладке табличного документа → настроить колонки → нажать Контроль заполнения → нажать Загрузить.
Настройку колонок сохраните в файл кнопкой сохранения настроек. При следующей загрузке того же прайса вы восстановите её за секунду.
Сопоставление колонок Excel и полей 1С
Это ключевой шаг. В универсальной обработке каждая строка настройки — один реквизит объекта. Для неё задаются несколько параметров.
Параметры строки настройки
- ✅ Пометка — загружать ли этот реквизит. Всё лишнее снимите, иначе пустые колонки затрут существующие значения.
- 🔎 Поле поиска — по какому реквизиту искать существующий элемент. Для номенклатуры это обычно артикул, для контрагентов — ИНН.
- 🔢 Номер колонки — номер колонки табличного документа, откуда брать значение.
- 📌 Значение по умолчанию — подставляется, если колонки нет или ячейка пустая. Удобно для вида номенклатуры или ставки НДС, одинаковой для всего файла.
- ⚙️ Режим загрузки — «Искать» (найти значение по тексту ячейки), «Устанавливать» (взять значение по умолчанию) или «Вычислять» (выражение на встроенном языке).
Отдельно задаётся строка, с которой начинаются данные. Если в файле одна строка заголовка, данные начинаются со второй.
Выбор поля поиска
От этого зависит, появятся ли дубли.
| Поле поиска | Плюсы | Риски |
|---|---|---|
| Артикул | уникален, не меняется | пустые артикулы в файле создадут новые элементы |
| Наименование | есть всегда | «Болт М8» и «Болт М8 » — два разных товара |
| ИНН (контрагенты) | однозначен для юрлица | филиалы с одним ИНН сольются в один элемент |
| Код 1С | точнее всего | в чужом прайсе кодов вашей базы нет |
Перед боевой загрузкой включите режим «не создавать новых элементов», если он есть в вашей версии обработки, и прогоните файл. Число найденных строк покажет, насколько хорошо работает поиск.
Импорт номенклатуры и контрагентов в справочники 1С
Номенклатура
Минимальный набор колонок: наименование, артикул, единица измерения, вид номенклатуры, ставка НДС. Остальное — по необходимости.
- 📁 Группы. Чтобы товары разложились по папкам, создайте группы заранее и укажите колонку «Группа» с режимом поиска по наименованию. Если группа не найдена, элемент попадёт в корень справочника.
- 🏷️ Вид номенклатуры. В БП 3.0 от вида зависят счета учёта по умолчанию. Неверный вид — неверные проводки при поступлении.
- 💰 Цены. В карточку номенклатуры цена не загружается. Цены записывают отдельно: документом установки цен или в регистр сведений через универсальную обработку.
Контрагенты
Обязательные колонки: наименование, ИНН, КПП (для организаций), вид контрагента — юрлицо или физлицо.
- Поле поиска — ИНН. Для обособленных подразделений с одинаковым ИНН используйте пару ИНН + КПП, иначе они схлопнутся в один элемент.
- Полное наименование заполняйте отдельной колонкой: оно идёт в печатные формы и счета-фактуры.
- Банковские счета и контактную информацию универсальная обработка загружает плохо: это отдельные справочники и табличные части. Проще создать контрагентов, а реквизиты подтянуть по ИНН из сервиса заполнения по ИНН, если он подключён.
- Договоры загружайте вторым проходом, в справочник «Договоры» с владельцем, найденным по ИНН.
ИНН с ошибкой в контрольной сумме 1С запишет, но потом на нём споткнётся отчётность и сверка с налоговой. Отфильтруйте в Excel строки, где длина ИНН не 10 и не 12 символов: =ДЛСТР(B2).
Загрузка табличных частей документов: поступления, реализации и заказы
Документ целиком из Excel загружают редко. Обычно создают документ вручную — шапку с контрагентом, складом и договором, — а строки товаров заливают из файла поставщика.
Порядок для поступления товаров
- Создайте документ поступления, заполните шапку и сохраните его без проведения.
- Над табличной частью «Товары» нажмите
Загрузить. - Вставьте из Excel колонки: артикул или наименование, количество, цена, ставка НДС.
- Проверьте сопоставление: товары, которых нет в базе, программа предложит создать или выбрать вручную.
- После загрузки сверьте итог документа с итогом накладной поставщика.
- Проведите документ.
Расхождение итога на копейки — обычно округление. Поставщик считает НДС от суммы строки, а 1С пересчитывает от цены и количества. Сверяйте колонку «Сумма» и правьте её, а не цену.
Заказы
Заказ покупателю и заказ поставщику (в БП 3.0 вместо заказа покупателя — «Счёт покупателю») заполняются тем же механизмом: кнопка загрузки над табличной частью или универсальная обработка в режиме «Загрузка в табличную часть». Для универсальной обработки документ должен быть открыт. Обработка заполнит строки, а пересчёт сумм и скидок выполнит сама форма документа.
Если покупатели регулярно присылают заказы в Excel, договоритесь об одном шаблоне. Сохранённая настройка колонок плюс стабильный шаблон превращают загрузку заказа в операцию на минуту.
Автоматизация: своя обработка, обмен и регламентная загрузка
Ручная загрузка хороша для разовых задач. Если один и тот же файл приходит каждую неделю, его загрузку стоит автоматизировать.
| Способ | Когда подходит | Кто настраивает |
|---|---|---|
| Сохранённая настройка универсальной обработки | один и тот же прайс раз в неделю | пользователь |
| Своя внешняя обработка | нестандартная структура файла, расчёты при загрузке | программист 1С |
| Дополнительная обработка в БСП | загрузка по расписанию без участия человека | программист и администратор |
| Типовой обмен (EnterpriseData, CommerceML) | данные приходят из другой программы, а не из Excel | администратор |
Внешняя обработка
Программист пишет обработку под конкретный файл и подключает её в Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки. Так обработку не нужно каждый раз открывать через меню «Файл», а права на неё выдаются точечно.
Основа такой обработки — чтение файла в табличный документ и обход строк:
&НаСервере
Процедура ЗагрузитьНоменклатуруНаСервере(ИмяФайла)
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ИмяФайла, СпособЧтенияЗначенийТабличногоДокумента.Значение);
Для НомерСтроки = 2 По ТабДок.ВысотаТаблицы Цикл
Артикул = СокрЛП(ТабДок.Область(НомерСтроки, 1, НомерСтроки, 1).Текст);
Наименование = СокрЛП(ТабДок.Область(НомерСтроки, 2, НомерСтроки, 2).Текст);
Если ПустаяСтрока(Артикул) Тогда
Продолжить;
КонецЕсли;
Ссылка = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Артикул);
Если Ссылка.Пустая() Тогда
Объект = Справочники.Номенклатура.СоздатьЭлемент();
Объект.Артикул = Артикул;
Иначе
Объект = Ссылка.ПолучитьОбъект();
КонецЕсли;
Объект.Наименование = Наименование;
Объект.Записать();
КонецЦикла;
КонецПроцедуры
В реальной обработке к этому добавляют заполнение обязательных реквизитов (вид номенклатуры, единица измерения, ставка НДС), обработку ошибок записи и журнал загруженных строк. Файл при выполнении на сервере должен лежать там, где его видит сервер 1С.
Типовой обмен вместо Excel
Если таблица Excel — промежуточное звено между двумя программами, уберите её. Между конфигурациями 1С данные передаются через формат EnterpriseData, с сайтом — через CommerceML, с банком — через обмен выписками. Excel в такой цепочке — лишний источник ошибок при каждом переносе.