На Эксель = ПолучитьCOMОбъект(ИмяФайла); отладка завершается и дальше не идет.
☑
0
SkillUp
26.10.18
✎
11:51
Функция, которая возвращает ТЗ (считывая эксель);
На Эксель = ПолучитьCOMОбъект(ИмяФайла); отладка завершается и дальше не идет. Не могу понять из-за чего.
Код функции:
Функция ПолучитьНужнуюТЗ (ИмяФайла);
Скрипт = Новый COMОбъект("MSScriptControl.ScriptControl");
Скрипт.language = "javascript";
ВремяНачала = Формат(Скрипт.eval("new Date().getTime()"),"ЧГ=0");
Эксель = ПолучитьCOMОбъект(ИмяФайла);
ЛистЭксель = Эксель.WorkSheets(1);
ВсегоСтрок = ЛистЭксель.Cells.SpecialCells(11).Row;
ВсегоКолонок = ЛистЭксель.Cells.SpecialCells(11).Column;
Сообщить("Колонок: "+ Строка(ВсегоКолонок) + " Строк: "+ Строка(ВсегоСтрок));
ТЗ = Новый ТаблицаЗначений;
Для Счетчик = 1 По ВсегоКолонок Цикл
ТЗ.Колонки.Добавить("Колонка"+Счетчик);
КонецЦикла;
Для Счетчик = 1 По ВсегоСтрок Цикл
НоваяСтрока = ТЗ.Добавить();
КонецЦикла;
Область = ЛистЭксель.Range(ЛистЭксель.Cells(1,1), ЛистЭксель.Cells(ВсегоСтрок,ВсегоКолонок));
Данные = Область.Value.Выгрузить();
Для Счетчик = 0 По ВсегоКолонок-1 Цикл
ТЗ.ЗагрузитьКолонку(Данные[Счетчик], Счетчик);
КонецЦикла;
ЛистЭксель = Неопределено;
Эксель = Неопределено;
ВремяОкончания = Формат(Скрипт.eval("new Date().getTime()"),"ЧГ=0");
//ОчиститьСообщения();
Сообщить("Выполнение скрипта заняло: " + Строка(ВремяОкончания - ВремяНачала) + " мсек. " + Символы.ПС +
"Обработано строк: " + Строка(ВсегоКолонок) + " колонок: " + Строка(ВсегоСтрок) + " итого ячеек; " + Строка(ВсегоКолонок * ВсегоСтрок));
Возврат ТЗ;
КонецФункции
1
asady
26.10.18
✎
11:52
(0) в диспетчере задач процесс экселя появляется?
2
SkillUp
26.10.18
✎
11:55
(1) Нет.
3
SkillUp
26.10.18
✎
11:55
(1) ОЙЙЙ, да есть аж 9 шт.
4
SkillUp
26.10.18
✎
11:55
(1) Офигеть!
5
shadow_sw
26.10.18
✎
12:00
Ex = новый COMОбъект("Excel.Application");
так попробуй
6
asady
26.10.18
✎
12:07
(5) не поможет
там наверное модальное окошко эксель выбросил и ждет
7
SkillUp
26.10.18
✎
12:10
(6) ИМЕННО ОНО! Спасибо!
8
shadow_sw
26.10.18
✎
12:18
Эксель.Visible = 1;
вот еще
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший