Главная страница
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.012 c
1-4925
diks
2003-01-25 07:54
2003.02.03
Кнопочки


1-5031
Mic_2000
2003-01-22 16:48
2003.02.03
Кто пользовался PReport`ом, помогите разобраться плиз


1-4910
Mikrom
2003-01-25 14:11
2003.02.03
Можно ли поменять внешний вид формы


1-4842
NewGuest
2003-01-23 20:33
2003.02.03
Возникает


1-4924
sumrak
2003-01-26 00:53
2003.02.03
монетарный формат