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

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

KOL & Excel


DmiSb ©   (2004-08-13 10:02:00) 

Уважаемые мастера КОЛ ! Существует ли в КОЛ способ использовать Excel. Пытался сделать следующее :

procedure TMainF.Button1Click(Sender: PObj);
var
 exl: OleVariant;
 WorkBook, Sheet: Variant;
 fileName: String;
begin
 fileName:= '.\1.xls';
 exl := CreateOleObject('Excel.Application');
 WorkBook := exl.Application.WorkBooks.Add;
 Sheet := WorkBook.WorkSheets[1];
 Sheet.Cells(1,1) := 'Проба';
 exl.Application.ActiveWorkBook.Saveas(fileName);
 exl.Visible:=true;  
end;

При этом в uses прописал ComObj с заменой sysdcu на КОЛовские.

В VCL такой код проходит на ура. А в КОЛ вылетает ошибка EOleSysError следующего содержания "Не был произведен вызов CoInitialize" во второй строке процедуры.

Как это можно победить ? Может кто уже пытался ? Для меня это оказалось сложно. И вообще, предлогаю обсудить тему, что можно использовать для вывода отчетов в КОЛе.  

Заранее благодарен всем откликнувшимся.


DmiSb   (2004-08-13 11:54:00) [1]

Да, но вопрос по поводу реализации генератора отчетов - в силе.
Кто, что подскажет ? Что лучше взять за основу ? Да и проще ?


DmiSb   (2004-08-13 11:52:00) [2]

Вот что значит, поторопился. Тогда отвечу сам себе. Нужно так :

procedure TMainF.Button1Click(Sender: PObj);
var
 exl: OleVariant;
 WorkBook, Sheet: Variant;
 fileName: String;
begin
 KOL.OleInit;
 fileName:= '.\1.xls';
 exl := CreateOleObject('Excel.Application');
 WorkBook := exl.Application.WorkBooks.Add;
 Sheet := WorkBook.WorkSheets[1];
 Sheet.Cells(1,1) := 'Ïðîáà';
 exl.Application.ActiveWorkBook.Saveas(fileName);
 exl.visible:=true;
end;

Спасибо, что никто не успел отматрить.


Наверх

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