Вниз
Скачать: 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
9-55381
bda
2002-09-17 09:41
2003.07.17
Где взять готовые спрайты?


3-55459
Карелин Артем
2003-06-16 11:00
2003.07.17
Запросы на изменение системных таблиц.


1-55593
Urvin
2003-07-02 17:26
2003.07.17
Покраска Кнопок


14-55711
_0$a_
2003-06-28 00:10
2003.07.17
APi функции для програмирования сокетов


1-55542
killer
2003-07-05 15:29
2003.07.17
Как удалить компонент?




   Наверх