Имя: Пароль:
1C
 
Помогите закрыть Excel после выгрузки в него!
0 StormProff
 
09.11.09
12:15
Здрасти!
Сталкнулась с такой проблемой.
создаю объект --> Эксель = создатьобъект("Excel.Application")
открываю документ --> книга = эксель.WorkBooks.open(ПолныйПуть)
выбираю лист --> лист = книга.WorkSheets(1)
выгружаю данные
сохраняю --> книга.saveAs(ПолныйПуть)

теперь суть проблемы. Работа ведется в терминальном режиме,
и переключаться между окошками пользователей учить я не хочу,
nulf ставим параметр эксель.visible = 0  Но после сохранения
в Excel висит в процессах на сервере!! И выдаёт соотв сообщение
при попытке открыть рабочий файл с другого компа (что занято)
Хотелось бы логически завершить выгрузку (закрыть этот эксель автоматически) и при этом чтобы пользователь не видел процесса
(visible = 0)
1 ТелепатБот
 
гуру
09.11.09
12:15
2 twise
 
09.11.09
12:17
Эксель.Quit()
3 СноваЗдорова
 
09.11.09
12:17
клевая фотка
4 twise
 
09.11.09
12:17
Даже лучше так

книга.Close();
Эксель.Quit();
5 dk
 
09.11.09
12:18
книга = "";
лист = "";
Эксель = "";
6 YF
 
09.11.09
12:18
(3) +1 Полностью согласен - фотка мне тоже понравилась.
7 KnightAlone
 
09.11.09
12:20
тока у меня на 8-ке:

inExcel = ПолучитьCOMОбъект("", "Excel.Application");
inExcel.Application.Workbooks.Open(ПолноеИмяФайла);
....
....
inExcel.ActiveWorkbook.Close();
inExcel.Quit();
8 Ochkarito
 
09.11.09
12:22
(6) Трое детей, тоже ничего так)
9 skunk
 
09.11.09
12:23
сто пудово переписать файл просит вот и висит
10 StormProff
 
09.11.09
12:23
Слушайте... а вообще обязательно его открывать-закрывать?? если нужно выгрузить в нужные ячейки (загружать из них придётся потому что загрузка не слепая)
11 twise
 
09.11.09
12:24
(9) Если не сделать так, как в (3) будет всегда висеть...
12 skunk
 
09.11.09
12:25
(10)конечно ...
13 skunk
 
09.11.09
12:26
перед тем ка выполнить saveas в который пытаешься сохранить
14 StormProff
 
09.11.09
12:26
(9) предложение о пересохранение всплывает активным окном поверх 1с даже с visible = 0
15 StormProff
 
09.11.09
12:29
(13) Я не об этом!! зачем мне открывать эксель когда можно тупо открыть файл xls  и там править. Или так нельзя?
16 twise
 
09.11.09
12:31
(15) Если через ОЛЮ, то только так
17 Ochkarito
 
09.11.09
12:31
(15) Можно ручками править) А если хочешь программно, то надо открыть файл для чтения/редактирования.
18 twise
 
09.11.09
12:33
(15) А вообще, если нет ВК-фобии используй йоксель
19 StormProff
 
09.11.09
12:33
то есть если хочу ячейками пользоваться то так.
а если по разделителям всяким мучаться то можно и без этого, да?
20 StormProff
 
09.11.09
13:02
(18) что такое ВК ?
21 Cryingman
 
09.11.09
13:06
ВК - Внешняя Компонента
22 StormProff
 
09.11.09
13:08
А опытные программеры пользуются ВК или обходятся в моей ситуации
23 VasilyKushnir
 
09.11.09
13:58
(20) Ну раз такая шикарная  фотка... Вот держи:
http://infostart.ru/public/59436/?PAGEN_1=4#comm
прямая запись в xls без установленного офиса. Обрати внимание на скоорость работы.
24 StormProff
 
09.11.09
14:00
Спасибо солнышко :-*
25 VasilyKushnir
 
09.11.09
14:09
(24) Кушайте на здоровье. Автор мой друг - так что с техподдержкой вопроссов не будет. Правда он к бабскому полу аппетит сильный имеет. Ну весь в меня, барбос...
26 DrZombi
 
гуру
09.11.09
14:09
(0)Заюзай выгрузку через АДО, ане напрямую через ОЛЕ Ексель апликацион ;)
Есть недостатки и приемущества.
- Недостаток, оформление лежит на плечах юзвера
- Преимущества, огромная скорость, по сравнению с оле коннектом
- Преимущества, не важно что у тебя открыто в екселе
- Преимущества, не важно, а есть ли ексель на ПК :)

п.с. Ну по тексту больше преимуществ, но недостаток один трудно разукрасить колонки как надо, но этот момент решим в оле, т.е. делаешь выгрузку данных через АДО, а после открываешь в оле и разукрашиваешь по быстрому ;)
27 NS
 
09.11.09
14:11
Если по вопросу в (0), то
Оле.DisplayAlerts = 0;
Оле.Quit();
Оле="";
28 StormProff
 
09.11.09
14:16
ой я не опытная, но по ячечкам в цикле шарить одно удовольствие!
29 los_hooliganos
 
09.11.09
14:18
юзай ADO
30 lxs
 
09.11.09
14:21
(28) ?
31 StormProff
 
09.11.09
14:24
(30) *ячейкам таблицы OLE
32 StormProff
 
09.11.09
14:25
(31) не опытная в ADO
33 VasilyKushnir
 
09.11.09
14:31
(28) я как правило в другом нахожу удовольствие... (это вам не по ячейкам шарить :-)))))
34 tyrm
 
09.11.09
15:00
(0)ух ты сиськи )))
35 СноваЗдорова
 
09.11.09
16:16
(8) я не верю. что у нее 3 детей... а с другой стороны чобы и нет?
36 StormProff
 
09.11.09
16:26
а кто сказал что фотка после 3х была? xD
37 СноваЗдорова
 
09.11.09
18:02
(36) А кто сказал, что по фотке определялось? =)