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

Еще раз об Exсel e   Найти похожие ветки 

 
Gremlin   (2003-05-15 09:17) [0]

Кто знает, подскажите.
1.Какая разница между компонентами Excel97 и Excel2000.
2.Как лучше писать для обоих офисов.
3.Как определить какой офис установлен.


 
AbrosimovA   (2003-05-23 15:58) [1]

Код ниже нормально работает для Office 97 и 2000(проверено).

Uses .....,Excel97,Excel2000,Registry;

function IsOLEObjectInstalled(Name: String): boolean;
var
ClassID: TCLSID;
Rez : HRESULT;
begin
// Ищем CLSID OLE-объекта
Rez := CLSIDFromProgID(PWideChar(WideString(Name)), ClassID);
if Rez = S_OK then Result := true // Объект найден
else Result := false;
end;

procedure TMainForm.FormCreate(Sender: TObject);
if not IsOLEObjectInstalled("Excel.Application") then begin
ShowMessage("Класс не зарегистрирован");
Application.Terminate;
end;
ConnectExcel;
end;

procedure TMainForm.ConnectExcel;
var cls_ExcelObject:string;
RegData:TRegistry;
begin
cls_ExcelObject := "Excel.Application";
//Определение установленной версии Excel
regData := TRegistry.Create;
regData.RootKey := HKEY_CLASSES_ROOT;
try
if regData.OpenKey("\Excel.Application\CurVer", False) then begin
cls_ExcelObject := regData.ReadString("");
regData.CloseKey;
end
finally
regData.Free;
end;
try
Excel:=CreateOleObject(cls_ExcelObject);
// Отключаем реакцию Excel на события, чтобы ускорить вывод информации
Excel.Application.EnableEvents := false;
Workbook :=Excel.WorkBooks.Add;
WorkBook:=Excel.WorkBooks.Open(ExtractFilePath
(Application.ExeName)+"xxx.xls");
WorkSheet1:=WorkBook.WorkSheets[1];
WorkSheet1.Name:="Лист №1";
end;



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

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



Память: 0.45 MB
Время: 0.012 c
1-13322
Flex
2003-05-25 13:13
2003.06.05
Есть ли возможность снизить мерцание компонента?


7-13488
Клавишник
2003-04-02 21:54
2003.06.05
Программирование СОМ -портов


14-13455
Renegate
2003-05-20 09:02
2003.06.05
Отстойная винда...


14-13472
XobBIT
2003-05-19 20:55
2003.06.05
TWebBrowser и anchor ....


14-13386
nick-from
2003-05-16 20:31
2003.06.05
Заправка картриджа: Panasonic KX-FT21RS




   Наверх