|
v7: подскажите как можно ускорить запись в excel |
☑ |
0
zladenuw
16.11.11
✎
15:54
|
Процедура СохранитьExcel()
Попытка
Excel = СоздатьОбъект("Excel.Application");
Состояние("Создание Excel");
Исключение
КонецПопытки;
Книга = Excel.WorkBooks.Add();
Лист = Книга.WorkSheets(1);
Лист = Книга.Sheets.Add();
//Обработка т.з.
//ТбЗн.
Состояние("Заполение Ексел файла");
ТбЗн.Сортировать("TypeRef,New");
ТбЗн.ВыбратьСтроки();
Пока ТбЗн.ПолучитьСтроку()=1 Цикл
Для п=2 по ТбЗн.КоличествоКолонок() Цикл
лИмяРеквизита ="";
ТбЗн.ПолучитьПараметрыКолонки(п,,,,лИмяРеквизита);
Значение = ТбЗн.получитьЗначение(ТбЗн.НомерСтроки,лИмяРеквизита);
Лист.Cells(1,п-1).Value = лИмяРеквизита;
лШирина = СтрДЛина(Значение);
Если лШирина < 10 Тогда
лШирина = 10;
КонецЕсли;
Лист.Columns(п-1).ColumnWidth = лШирина;
Лист.Cells(ТбЗн.НомерСтроки,п-1).Value =Строка(Значение);
//Спр.УстановитьАтрибут(лИмяРеквизита,Значение);
КонецЦикла;
КонецЦикла;
лПуть = "c:\temp\JDEto1CMod_"+Лев(Прав(ИмяФайла,13),9)+"_"+СтрЗаменить(ТекущаяДата(),":","")+".xls";
Попытка
Книга.SaveAs(лПуть);
Состояние("Запись в файл Ексел");
Сообщить("Файл Сохранен -"+лПуть);
Исключение
КонецПопытки;
Excel.QUIT();
КонецПроцедуры
|
|
1
zladenuw
16.11.11
✎
15:55
|
можно ли как то сразу всю область загрузить или нет ?
|
|
2
PuhUfa
16.11.11
✎
15:55
|
Создать печатную форму в 1С и сохранить уже готовую в xls?
|
|
3
zak555
16.11.11
✎
15:56
|
сколько строк ?
|
|
4
Ёпрст
гуру
16.11.11
✎
15:56
|
можно использовать ado
|
|
5
andrewks
16.11.11
✎
15:56
|
Yoksel
|
|
6
zladenuw
16.11.11
✎
15:57
|
(4) а если адо. то как ? чето нет представлений
|
|
7
zladenuw
16.11.11
✎
15:59
|
(3) строк не много до 5 к. колонок до 20.
|
|
8
ilya_i
16.11.11
✎
15:59
|
отключить автообновление
|
|
9
zladenuw
16.11.11
✎
16:01
|
(8) обновление чего ?
|
|
10
zladenuw
16.11.11
✎
16:02
|
(2) попробую
|
|
11
zak555
16.11.11
✎
16:02
|
а если в табличный документ, но не показывать, а сохранить в xls ?
|
|
12
Ёпрст
гуру
16.11.11
✎
16:02
|
|
|
13
zladenuw
16.11.11
✎
16:05
|
(12) спс
|
|