Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.03;
Скачать: CL | DM;

Вниз

Коллеги, помогите кто делал репорты в Excell-e, очень надо...!   Найти похожие ветки 

 
CPPBuilderDev ©   (2003-01-16 16:18) [0]

Имеем:
object excel: TExcelApplication
object sheet: TExcelWorksheet
object wb: TExcelWorkbook


Делаем:
excel->Connect();
wb->ConnectTo(excel->Workbooks->Add( xlWBATWorksheet, 0 ));
excel->Visible[0] = true;
sheet->ConnectTo(wb->Get_Sheets()->get_Item(1));
sheet->PageSetup->set_Orientation(xlLandscape);
...


В первый раз все работает ОК.

После чего при попытке повторного выполнения того же кода:
excel->Connect();
wb->ConnectTo(excel->Workbooks->Add( xlWBATWorksheet, 0 ));
excel->Visible[0] = true;
sheet->ConnectTo(wb->Get_Sheets()->get_Item(1));
sheet->PageSetup->set_Orientation(xlLandscape);
...


Получаем зациклившийся Excel,хотя код программы отрабатывает корректно видимо чего-то не закрыто.

Закрываем:

sheet->Disconnect();
wb->Disconnect();
excel->Disconnect();


Но результат не меняется.
Не помогает и excel->Quit();
Вопрос.
Чего я не так закрываю или какие действия корректно предпринять для правильного закрытия?


 
asmith   (2003-01-16 16:47) [1]

Нужно еще и объект разрушить, если создавал его вручную (из примера это неочевидно). Во всяком случае проверено, что если работать с Excel через позднее связывание и не уничтожить по завершению интерфейсную ссылку явно - Excel останется в памяти.


 
CPPBuilderDev ©   (2003-01-16 16:52) [2]

Создавал не вручную, просто побросал на форму объекты.


 
gsu ©   (2003-01-16 17:03) [3]

NewInstance := true;
...

Excel := TExcelApplication.Create(Self);
if NewInstance then
Excel.ConnectKind := ckNewInstance
else
Excel.ConnectKind := ckRunningOrNew;
Excel.Connect;
поможет ?


 
gsu ©   (2003-01-16 17:06) [4]

и вообще: http://www.delphikingdom.com/helloworld/excel.htm


 
id_privin ©   (2003-01-16 17:34) [5]

я делаю так

Инициализация
ExcelApp := TExcelApplication.Create(nil);
ExcelApp.ConnectKind := ckRunningorNew;
ExcelApp.Connect;

Убийство
FreeAndNil(ExcelApp);

Конектить два раза смысла нет.


 
CPPBuilderDev ©   (2003-01-16 17:38) [6]

Не-а! Тоже самое...


 
CPPBuilderDev ©   (2003-01-16 18:06) [7]

id_privin - большое спасибо Вам коллега, а то к концу дня уже все мозги навыворот. Это же очевидно!!!



Страницы: 1 вся ветка

Текущий архив: 2003.02.03;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
1-4955
SeNtiMeL
2003-01-26 19:29
2003.02.03
Как вставить gif картинку в RichEdit ???????


14-5148
igorr
2003-01-17 17:46
2003.02.03
Как украсть трамвай?


1-5041
ЮРИЙ_К
2003-01-23 15:45
2003.02.03
Снимок экрана в JPG


14-5141
Supreme
2003-01-15 20:14
2003.02.03
Прикольные имена?


14-5171
Tsr
2003-01-17 00:26
2003.02.03
Как внести изменения в файл-образ Nero