Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.29;
Скачать: CL | DM;

Вниз

Экспорт данных в Excel   Найти похожие ветки 

 
ASMiD ©   (2005-12-28 14:03) [0]

Существует процедура вывода блока данных из D7 в Excel, которая прекрасно работает под Office XP. Под Office 2003  не работает абсолютно. Может кто подскажет в чем гимор?


 
k2 ©   (2005-12-28 14:06) [1]

процедуру покажите, не стесняйтесь


 
ASMiD ©   (2005-12-28 14:08) [2]

Нет вопросов!
tRange := ExWbk.WorkSheets[Curws].Range[Cell,Row];


 
k2 ©   (2005-12-28 14:10) [3]

то есть в этой строчке возникает ошибка? или што?
никакого блока данных пока не видно


 
ASMiD ©   (2005-12-28 14:16) [4]

Виноват!!
Ошибка-то не возникает, просто Ёксель невидим после следующей строки
tRange.Value := ExData;
ExData: Variant;


 
Vlad ©   (2005-12-28 14:37) [5]


> ASMiD ©   (28.12.05 14:16) [4]


> просто Ёксель невидим после следующей строки

Следующая строка никак не связана с видимостью Ёкселя.
Для этого у него есть свойство Visible


 
k2 ©   (2005-12-28 14:37) [6]

осталось выяснить што в блоке ExData, как он создается и заполняется :)


 
ASMiD ©   (2005-12-28 14:42) [7]

А от заполнения Variant что-то зависит или имеет смысл поставить OLEVariant?
Данные строковые - string[255];


 
k2 ©   (2005-12-28 14:48) [8]

зависит от создания вроде бы


 
ASMiD ©   (2005-12-28 14:55) [9]

Если зависит от создания - то код в студию.
function InitExcel(const AOwner:TComponent; const TemplName:string):wordbool;
var
 cerr:wordbool;
   ClassID: TCLSID;
label 1;
begin
// Is Excel exists?
 if s_Ok<>CLSIDFromProgID(PWideChar(WideString("Excel.Application")), ClassID) then begin
   MessageBox(0,Не установлен Microsoft Excel","Внимание!",mb_IconStop or MB_OK);
   result:=FALSE; exit;
 end;
// Ищем Excel
 cerr:=FALSE;
 try
   ExAppl := GetActiveOleObject("Excel.Application");
 except
// Запуск Excel
  cerr:=TRUE;
 end;
 if VarIsEmpty(ExAppl) then ExAppl:=CreateOleObject("Excel.Application");
 ExAppl.Visible := FALSE;
// Отключение реакции на события для ускорения экспорта
 ExAppl.Application.EnableEvents := false;
// Connect EXCEL
 if TemplName<>"" then ExWbk:=ExAppl.WorkBooks.Add(TemplName) else ExWbk:=ExAppl.WorkBooks.Add;
 ChangeWorkSheet(1);
 result:=TRUE;
end;

еще раз повторюсь - под Office ХР проходит, а под 2003 нет


 
k2 ©   (2005-12-28 15:14) [10]

от создания блока данных ExData
(ушла домой)


 
старый маразматик(с)   (2005-12-28 15:16) [11]

ExAppl.Visible := true
в конце ф-ции написать?


 
ASMiD ©   (2005-12-28 15:32) [12]

ExAppl.Visible := true
В обязательном порядке, но, видимо, ошибка происходит до этого



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

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

Наверх




Память: 0.49 MB
Время: 0.031 c
6-1129442528
Gisi
2005-10-16 10:02
2006.01.29
О работе c idhttp


2-1137011269
Majesto
2006-01-11 23:27
2006.01.29
DBGrid


2-1136932525
Arazel
2006-01-11 01:35
2006.01.29
(DiskSize-DiskFree) > на Char (Не чего не получается :( )


2-1136734363
asd
2006-01-08 18:32
2006.01.29
Файлы


6-1129620575
antoxa2005
2005-10-18 11:29
2006.01.29
http://www.delphimaster.ru/forum/add-4.html - Как сохранить файл?