gifts2017

Чтение и загрузка из файлов EXCEL УП

Опубликовал Павел Знайкин (PavelZnaikin) в раздел Обработки - Универсальные обработки

Чтение и загрузка из файлов EXCEL УП

Обработка для Управляемого приложения читает файл EXCEL и создает таблицу значений. Код открытый.

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

Так что можете дописывать под свои нужды, половина работы уже сделана.Cool

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

Наименование Файл Версия Размер
Чтение и загрузка из файлов EXCEL УП 117
.epf 6,37Kb
15.07.15
117
.epf 6,37Kb Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение
Комментарии
1. rasswet (rasswet) 18.10.12 08:52
2. Павел Знайкин (PavelZnaikin) 19.10.12 09:49
Нет, к сожалению этот метод я не знаю.
Если не сложно расскажите!!!
3. Peter Metelkin (iiceberg) 20.10.12 19:52
Спасибо. На файловой версии хорошо и быстро загрузилось. Но вот возникла проблема при чтении файла на клиент-серверной версии... т.к. файл расположен локально , а чтении идет на сервере... то на сервере по указанному пути файл не обнаруживается... , да ко всему прочему добавляем , что не на всех серверах установлен эксель. так что немного изменил 2 процедурки... на вот такое содержание и все взлетело.


&НаКлиенте	
Процедура ЧтениExcelФайла(ПутьКФайлу)
	
	Эксель = Новый COMОбъект("Excel.Application");
	Эксель.WorkBooks.Open(ПутьКФайлу);
	Лист   = Эксель.Sheets(3);
	
	ВсегоКолонок = Лист.Cells(1,1).SpecialCells(11).Column;
	ВсегоСтрок   = Лист.Cells(1,1).SpecialCells(11).Row;      
	
	
	Область = Лист.Range(Лист.Cells(2,1), Лист.Cells(ВсегоСтрок,ВсегоКолонок));
	Данные = Область.Value.Выгрузить();

	// т.к. нельзя передавать таблицу значений с клиента на сервер то придется все делать на сервере =)
	СоздатьЗАгрузить(ВсегоКолонок,ВсегоСтрок,Данные);	
	
КонецПроцедуры

&НаСервере
Процедура СоздатьЗАгрузить(ВсегоКолонок,ВсегоСтрок,Данные)
	
	ТЗ = Новый ТаблицаЗначений;
	
	Для Счетчик = 1 По ВсегоКолонок Цикл
		
		ТЗ.Колонки.Добавить("Колонка"+Счетчик);
		
	КонецЦикла;
	
	Для Счетчик = 1 По ВсегоСтрок Цикл
		НоваяСтрока = ТЗ.Добавить();
	КонецЦикла;
	
	Для Счетчик = 0 По ВсегоКолонок-1 Цикл
		ТЗ.ЗагрузитьКолонку(Данные[Счетчик], Счетчик);
	КонецЦикла;
	
	СоздатьЭлементСправочника(ТЗ);
	
	
КонецПроцедуры

...Показать Скрыть
4. Павел Знайкин (PavelZnaikin) 20.10.12 20:31
Поздравляю нашли выход из ситуации
6. vers139 (vers139) 09.04.13 17:29
Подскажите, пожалуйста, как загрузит Ваша обработка код товара из Excel, если в ячейке значение 1, формат ячейки 0000 (пользователь видит 0001)?