gifts2017

Загрузка из Excel в 1С 8.3

Опубликовал Николай Панихин (panihinnv) в раздел Обработки - Обработка справочников

Обработка для загрузки данных из Excel в справочник ФизическиеЛица ЗУП 3.0.

Обработка предназначена для ознакомления с механизмом загрузки данных из Excel в справочники или другие табличные части.

В данном примере реализована загрузка в справочник ФизическиеЛица конфигурации ЗУП 3.0

 

Для загрузки данных необходимо подготовить Excel файл с колонками (ФИО, ДатаРождения, ИНН, СНИЛС)


Описание функции чтения данных из Excel

xlLastCell = 11;

Указываем полный путь до файла

ВыбФайл = Новый Файл(ЭтаФорма.Объект.Excel);
Если НЕ ВыбФайл.Существует() Тогда
     Сообщить("Файл не существует!");
     Возврат Ложь;
КонецЕсли;

Попытка
Excel = Новый COMОбъект("Excel.Application");
Excel.WorkBooks.Open(ЭтаФорма.Объект.Excel); 
Состояние("Обработка файла Microsoft Excel...");

Указываем номер листа Excel

ExcelЛист = Excel.Sheets(1); 
Исключение
     Сообщить("Ошибка. Возможно неверно указан номер листа книги Excel.");
Возврат ложь;

КонецПопытки;

Узнаем количество строк и столбцов Excel файла

 

ActiveCell = Excel.ActiveCell.SpecialCells(xlLastCell);
RowCount = ActiveCell.Row; //Строчек
ColumnCount = ActiveCell.Column; //Столбцов

Начинаем чтение данных со внорой строки (первая это заголовок)

Для Row = 2 По RowCount Цикл 
     Наим = ExcelЛист.Cells(Row,1).Text;
     ДатаР = ExcelЛист.Cells(Row,2).Text;
     ИНН = ExcelЛист.Cells(Row,3).Text;
     СНИЛС = ExcelЛист.Cells(Row,4).Text;

     Передаем данные в процедуру записи данных

     

ЗагрузитьЗаписать(Наим,ДатаР,ИНН,СНИЛС)

КонецЦикла;


 

Сама процедура записи данных в справочник выглядит так:

Справочник = Справочники.ФизическиеЛица;

НовСтрока = Справочник.СоздатьЭлемент();
НовСтрока.Наименование = Наим;
НовСтрока.ДатаРождения = ДатаР;
НовСтрока.ИНН = ИНН;
НовСтрока.СтраховойНомерПФР = СНИЛС;
НовСтрока.ФИО = Наим;

НовСтрока.Записать();

 

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

Скачать файлы

Наименование Файл Версия Размер
Загрузка из Excel 46
.epf 6,79Kb
28.06.16
46
.epf 6,79Kb Скачать

См. также

Contragent+ 5.0 от 2 500
Подписаться Добавить вознаграждение
Комментарии
1. Сергей Самарин (Samarin) 29.06.15 14:32
Я сейчас пишу обработку с аналогичным (более полным) функционалом по аналогии с той, которая у меня выложена для ЗБУ/ЗУП,
но использоваю альтернативный метод "ТабДок.Прочитать()" платформы 8.3.6. Обеспечил работу в толстом, тонком и веб-клиенте.
Добавил возможности БСП по сохранению/восстановлению данных настроек.
Сейчас изучаю возможности по многопоточной загрузке в фоновом режиме.
В чем интерес Вашей обработки, какой практический смысл?
2. Николай Панихин (panihinnv) 30.06.15 06:06
(1) Samarin,
Практический смысл больше для меня. Во первых я пишу узконаправленную конфигурацию для предприятия (перенос программ написанных на DOS в 1С), где мне нужно будет загрузить все данные из dbf файлов, а так же мне нужно будет произвести перенос данных из 1С ЗуП 2.5 в ЗуП 3.0, а штатной обработкой и универсальным обменом данными через XML тоже не всегда помогает. Так что я написал простенькую обработку для загрузки данных из Excel которую можно легко доработать для загрузки в любой конфигурации.