Зависает при попытке открыть файл excel.
Доброго времени суток. Написал обработку , для открытия файла эксель и выгрузки данных в тз, при попытке открыть файл намертво зависает. В файле 8700 строк, вес файла 3.2 мб. Подскажите, пожалуйста, можно как то исправить проблему? Или лучше пробовать через ТабличныйДокумент.Прочитать()?
ExcelApplication = Новый COMОбъект("Excel.Application");
ФайлExcel = ExcelApplication.Workbooks.Open(ФайлДанных); //////зависает на этом моменте
ЛистExcel = ФайлExcel.Sheets(1);
xlCellTypeLastCell = 11;
ExcelПоследняяСтрока = ЛистExcel.Cells.SpecialCells(xlCellTypeLastCell).Row;
ExcelПоследняяКолонка = ЛистExcel.Cells.SpecialCells(xlCellTypeLastCell).Column;
ТабЗнч = Новый ТаблицаЗначений;
Для НомКолонки = 1 По ExcelПоследняяКолонка Цикл
ТабЗнч.Колонки.Добавить("Колонка" + НомКолонки, Новый ОписаниеТипов("Строка"));
КонецЦикла;
Для Строка = 1 По ExcelПоследняяСтрока Цикл
НоваяСтрока = ТабЗнч.Добавить();
КонецЦикла;
ОбластьExcel = ЛистExcel.Range(ЛистExcel.Cells(1, 1),ЛистExcel.Cells(ExcelПоследняяСтрока, ExcelПоследняяКолонка));
Данные = ОбластьExcel.Value.Выгрузить();
Для Счетчик = 0 По ExcelПоследняяКолонка - 1 Цикл
ТабЗнч.ЗагрузитьКолонку(Данные[Счетчик], Счетчик);
КонецЦикла;
ЛистExcel = Неопределено;
ФайлExcel.Close();
ФайлExcel = "";
ПоказатьПо теме из базы знаний
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
С проблемой зависания Excel также столкнулся на методе excel.workbooks.open. Причиной было то, что офис-пакет Майкрософт не был вовремя активирован, и всплывало окно-предупреждение в связи с этим после программного открытия файла. Это мешало программному чтению файла и приводило к зависанию. Очевидно по проблеме соответствующее решение.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот