|
Новый COMОбъект("Excel.Application") и зависание процесса Excel
| ☑ |
0
Maxwell198705
17.11.15
✎
06:49
|
Обрабатываю лист excell методами
Эксель = Новый COMОбъект("Excel.Application");
Книга = Эксель.WorkBooks.Open(ПутьКФайлу);
Лист = Книга.WorkSheets(1);
ВсегоКолонок = Лист.Cells(1,1).SpecialCells(11).Column;
ВсегоСтрок = Лист.Cells(1,1).SpecialCells(11).Row;
Для Строка = 1 по ВсегоСтрок Цикл
.................
КонецЦикла;
Лист = Неопределено;
Книга = Неопределено;
Эксель = Неопределено;
Но в итоге остаётся зависший процесс Excell, приходится в ручную его завершать через диспетчер задач. МОжет кто сталкивался с такой проблемой, подскажите как её решить?
Платформа 8.3 выполняется всё &НаКлиенте
|
|
1
Garykom
гуру
17.11.15
✎
06:54
|
(0) лень погуглить?
excelBook.Close(0);
excelApp.Quit();
|
|
2
Мэс33
17.11.15
✎
06:55
|
Эксель.Application.Quit();
|
|
3
Maxwell198705
17.11.15
✎
07:01
|
Значение не является значением объектного типа (Application)
Эксель.Application.Quit();
|
|
4
Garykom
гуру
17.11.15
✎
07:05
|
(3) выкинь нафик "Application."
|
|
5
Garykom
гуру
17.11.15
✎
07:05
|
(4)+ и прочитай и переделай (1)
|
|
6
Maxwell198705
17.11.15
✎
07:07
|
Эксель.Application.Quit();
Лист = Неопределено;
Книга = Неопределено;
Эксель = Неопределено;
вот так работает!
Всем спасибо!
|
|
7
minsk1s
17.11.15
✎
07:08
|
У меня так решилось
|
|
8
minsk1s
17.11.15
✎
07:09
|
Незабудь потом сервак ребутнуть.
|
|
9
Maxwell198705
17.11.15
✎
07:16
|
(7) ну это уж совсем замутно, тут всё на клиенте, все просто, файл открыли на клиенте прочитали и закрыли. Сервер про это вообще ничего не знает.
|
|
10
Мэс33
17.11.15
✎
07:16
|
(8) Точно !
|
|
11
ЧеловекДуши
17.11.15
✎
07:20
|
(9) Чукча не читатель?
Подставить по смыслу переменные не могешь?
Книга.Close(0);
Эксель.Quit();
|
|
12
ЧеловекДуши
17.11.15
✎
07:20
|
+(8) И формат C: /Y для успокоения души, выполнить :)
|
|
13
oslokot
17.11.15
✎
07:28
|
8.3 уже сама умеет ексельки читать, без всяких сом
|
|
14
Garykom
гуру
17.11.15
✎
07:30
|
(13) а PDF случаем еще не умеет?
|
|
15
los_hooliganos
17.11.15
✎
08:17
|
(6) Не забудь Эксель.finalize()
Память тоже надо освободить.
|
|
16
los_hooliganos
17.11.15
✎
08:19
|
(13) SQL запрос к эксель все равно будет быстрее.
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший