Вниз
Скачать: CL | DM;

Измениить большое количество Excel.Application на WorkBook   Найти похожие ветки 

← →
Andrey02   (2003-07-02 01:37) [0]

Экспорт данных через Excel.Application происходит несколько раз, и при каждом вызывается новое приложение Excel (Excel.Application), и когда вызывается больше 5-10 приложений система затыкается. А по хорошему каждый раз должна открывться только новая книга (WorkBook).

у меня работа с Excel.Application организована:
...
Excel, WorkBook: Variant;
...
Excel := CreateOleObject("Excel.Application");
Excel.SheetsInNewWorkBook := 1;
Excel.WorkBooks.Add;
Workbook := Excel.WorkBooks[1];
...


1. Как организовать работу с Workbook? Т.е. когда Excel открыт - то создавать новую Workbook, когда нет - создавать Excel.Application.

2. возможно стоит воспользоваться компонентами TExcelApplication, TExcelWorkBook? как?


← →
Rol   (2003-07-02 08:26) [1]

1. GetActiveOLEObject + F1, MSExcel.Workbooks.Add.
2. Может и стоит, но для начала следует узнать, чем раннее связывание отличается от позднего.


← →
Edward   (2003-07-02 09:44) [2]

Запуск Excel:

var
Excel: OLEVariant;
...
try
//Поключение к текущему экземпляру если он запущен
Excel := GetActiveOleObject("Excel.Application");
except
//Создание нового
Excel := CreateOleObject("Excel.Application");
end;


Работа с Workbook:

var
Workbook: OLEVariant;
...
Workbook := Excel.WorkBooks.Add;
или

Workbook := Excel.WorkBooks.Add("c:\template.xls");


← →
Andrey02   (2003-07-02 18:11) [3]

спасибо. WorkBook работатет идеально.

но при каждом новом запуске Excel.Application (Excel.Visible := True;) оно запускалось поверх всех приложений. А WorkBook лишь добавляется внизу к Excel, если главный Excel свёрнут или неактивен.

Можно сделать чтобы каждый новый WorkBook при запуске перекрывал поверх другие приложения?

Заранее благодарен.


← →
Vitek   (2003-07-03 07:28) [4]

ExcelApplication1.WindowState[0] := xlMaximized;
ExcelApplication1.ScreenUpdating[0] := true;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
14-55843
cyborg
2003-07-01 00:30
2003.07.17
100 самых часто употребимых россиянами слов


4-55883
BigDaddy
2003-05-11 14:02
2003.07.17
Правильный синтаксис AdjustTokenPrivileges???


3-55415
andrew_kv
2003-06-24 08:50
2003.07.17
Есть соединение с SQL сервером через ADO


7-55879
vf
2003-05-01 00:51
2003.07.17
Связать виртуальный и реальный мир


14-55755
Morfey
2003-06-28 03:11
2003.07.17
В чате просили исходник...




   Наверх