Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Что случилось с Excel.Application? [D7, WinXP]


Aleksandr. ©   (2004-10-12 16:33:00) 

У меня уже давно был написан экспортер в Excel, прекрасно работал, засасывая csv. А тут поставил Office 2003, и работать он перестал. Раньше код был:

var
 XLApp     : Variant;
 Sheet     : Variant;
 Range     : Variant;
 I         : integer;
 RangeStr  : string;
begin
 XLApp:=CreateOleObject('Excel.Application');
 if VarIsEmpty(XLApp) then begin
   RiMessage(0,h_Error,sNoExcel);
   FExcelExists:=false;
   Exit
 end;
 try
   XLApp.DisplayAlerts := False;
   if NOT FileExists(CheckDir(FTempDir)+ExtractFileName(FFileName)) then
     Exit;
   XLApp.WorkBooks.Open(CheckDir(FTempDir)+ExtractFileName(FFileName), , , 2, , , , , ,true);
   Sheet:=XLApp.Workbooks[1].Worksheets[1];
   Sheet.Cells.Font.Name:=FFont.Name;
   Sheet.Cells.Font.Size:=FFont.Size;
   Sheet.Cells.Font.Bold:=fsBold in FFont.Style;
   Sheet.Cells.Font.Italic:=fsItalic in FFont.Style;
   Sheet.Cells.Font.Underline := fsUnderline in FFont.Style;
   Range:=Sheet.Range['A1:'+TExcelLetters[eColCount]+'1'];
   Range.Font.Bold:=True;
   Range.Font.Italic:=false;
... и т.д.

При WorkBooks.Open в RT стал ругаться на неверное количество параметров. Убрал все, кроме имени файла - стал выдавать Range Check Error на Range.Font.Bold:=True;
Причем программы, скомпилянные с Office XP, продолжают нормально работать, а после новой компиляции перестают. RCE, разумеется, вырублен (разумеется, потому что новомодные контролы типа TActionMainMenuBar и т.д. и MIDAS со включенным вообще не работают).
Что с ним такое могло случиться и как это лечить?


Grrey   (2004-10-12 20:41:00) [1]

Для этих целей я использую vtkExport.
Он бесплатый и не зависит от версии. Для его работы даже сам Excel не нужен. Ну разве что потом прочитать его не сможешь.
Ссылку не дам. Искать неохота.


Amoeba   (2004-10-12 17:15:00) [2]

Наверное надо импортировать библиотеку типов Excel2003 и изрядно править код.


П7   (2004-10-12 17:15:00) [3]

Нужно руки кое кому оторвать за 2003 OFF'ис. Более глючной проги я в жизни не видел!!! ): У меня постоянные проблемы с моей прогой из-за этого, мать его, офиса.


Наверх

Титульная страница Поиск, карта сайта Написать письмо