Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];

Вниз

Коллеги, помогите кто делал репорты в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
1-4869
Oleg_D
2003-01-24 18:13
2003.02.03
Модификация исполняемого кода.


14-5152
sancho
2003-01-17 16:59
2003.02.03
ПодскажитеЮ, пожалуста!


3-4806
Valeris
2003-01-17 11:20
2003.02.03
подключение к SQL серверу в консольном приложении


14-5142
GebbelZ
2003-01-14 22:33
2003.02.03
Создание помощи


1-4873
Adolf
2003-01-24 16:35
2003.02.03
RadioButton и Form.Color : глюк Дельфи?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский