QuickReport To Excel (200分)

  • 主题发起人 主题发起人 chillinson
  • 开始时间 开始时间
C

chillinson

Unregistered / Unconfirmed
GUEST, unregistred user!
我有个复杂的统计报表,最后还要把QuickReport导入到Excel.如果是简单的DbGrid to Excel还好办.也有用过PsQRFilters 2.11,可是导的Excel文件打不开.现在网上此类功能的组件都要Money.请教一下各位是否有其他好的解决办法或着组件.谢谢!
 
1、直接用DELPHI将数据导入EXCEL;
2、放入QRExcelFilter1,预览时点保存应有EXCEL文件格式选择,但效果不太好。
 
能产生QRT再花一点时间将数据写入EXCEL,这样什么格式都可自己控制。
 
TO:wwwwb
用DELPHI写估计一下完成不了,所以现在想找第三方组件.可是都要Money. 我之前用的是PsQRFilters 2.11,预览时可以有包括EXCEL在内的几种格式保存.不过保存的不能打开.不知道你说的QRExcelFilter怎样,能否发给我一试.我的邮箱是jimmy@syndicatec.com.谢谢.
 
你到WWW。51DELPHI。COM下载QR3.62FOR D5-D7。
 
下面代码是将QuickReport要打印的数据导出到Excel文件(写作风格不太好^-^),在Excel排版报表不难吧!
var
I: Integer;
Str,pfilename: String;
StrList: TStringList;//用于存储数据的字符列表
begin
if query1.Active then
//如果有数据集打开则可导出,否则报错
begin
if savedialog1.Execute then
//此部分主要是要确定文件名
begin
if strpos(pchar(savedialog1.FileName),pchar('.xls'),)<>nil then
pfilename:=savedialog1.FileName
else
pfilename:=savedialog1.FileName+'.xls';
StrList := TStringList.Create;//创建字符列表
strlist.Add('物品名称'+#9+'型号规格'+#9+'单位'+#9+'单价'+#9+'数量'+#9+'金额'+#9+'批号'+#9+'产地'+#9+'供货公司'+#9+'发票号'+#9+'材料类别'+#9+'发票日期'+#9+'入库日期'+#9+'制单人'+#9+'拼音编码'+#9);//Excel表头(这个部分要看你自己的咯)
try
with query1do
begin
First;

while not Eofdo

begin
Str:='';
for I := 0 to FieldCount-1do
Str:= Str+Fields.AsString+#9;
//关键是在这儿
StrList.Add(Str);
Next;
end;
try
StrList.SaveToFile(pfilename);
except
application.MessageBox('您指定的文件正被其他程序所使用或含有非法字符,请结束其使用或重新输入文件名!','错误',mb_ok+mb_iconstop);
end;
end;
StrList.Free;
except
StrList.Free;

end;
end;
end
else
application.MessageBox('数据集未打开,无法导出文件!','错误',mb_ok+mb_iconwarning);
end;
 
我用的也是PsQRFilters 2.11,没有问题.可能是你系统还是什么问题
 
请问楼上的这位大哥,小弟是入门者,这句是什么意思?能解释一下吗? 谢谢!
if strpos(pchar(savedialog1.FileName),pchar('.xls'),)
 
没办法打开是出什么提示??我从前也用过,好象是没有问题的呀,当然导出来的格式合不合用那就另外说了
 
不是控件的问题.结贴吧.谢谢各位!.
 
不是组件的问题,结贴吧.谢谢各位!
 
[:)]
不是很懂.帮顶
 
多人接受答案了。
 
后退
顶部