Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.05;
Скачать: 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 вся ветка

Текущий архив: 2003.06.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
1-13215
___Nikolay
2003-05-27 07:30
2003.06.05
Как при щелчке на компоненте сделать так, чтобы он


3-13069
KIR
2003-05-13 15:52
2003.06.05
Похоже грохнулся IB. Может, кто знает, как чинить. Вот что пишет:


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


14-13416
DVM
2003-05-19 09:36
2003.06.05
Одн исходник для двух языков программирования. Возможно ли?


1-13238
kruzoman
2003-05-27 14:25
2003.06.05
как получить параметры