关于从delphi中调用excel报表的问题(100分)

  • 主题发起人 主题发起人 gmmy1996
  • 开始时间 开始时间
G

gmmy1996

Unregistered / Unconfirmed
GUEST, unregistred user!
数据库中的表(人员基本信息表)的字段有姓名、性别、出生日期、专业、毕业学校、身高、体重等许多人员基本信息的字段,有20几个
我现在excel中做了一个模板,模板为:

姓名 性别 出生日期
身高 体重 学历
专业
学校
请问各位大虾,怎么样在delphi中调用我的这个模板
 
不明白,具体点
 
就是说从delphi导到excel中可不可以导成不规则的报表,是不是全部都要用赋值的方式来实现不规则报表,有没有别的方式来实现
 
这里有篇文章
http://www.tommstudio.com/newclub30/d_viewdownload.asp?type=bianchengjiqiao&id=7243
 
begin
//数据写入Execl的方法
try
ExcelApplication1 := TExcelApplication.Create(Application);
ExcelWorksheet1 := TExcelWorksheet.Create(Application);
ExcelWorkbook1 := TExcelWorkbook.Create(Application);
ExcelApplication1.Connect;
except
Application.Messagebox('Excel 没有安装!', 'Hello', MB_ICONERROR + mb_Ok);
Exit;
end;
try
excelapplication1.Visible [0]:=true;
ExcelApplication1.Workbooks.Add(EmptyParam, 0);
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks[1]);
ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Worksheets[1] as _worksheet);
with excelworksheet1.Cellsdo
begin
Item[1,1]:=userinfo.name+'收费统计报表';
item[2,1]:='收费日期:'+formatdatetime('yyyy-mm-dd',date);
Item[3,1]:='';
Columns.NumberFormatLocal:='@';
with catvdatamodule.QueryPublicdo
begin
close;
sql.clear;
strSQL:='';
strSQL:='select distinct TollType from toll where sfdate='''+formatdatetime('yyyy-mm-dd',Date)+''' order by tolltype';
sql.Add(strSQL);
open;
if not eof then
begin
iCount:=recordcount;
setlength(TollName,recordcount);
for i:=1 to recordcountdo
begin
Item[3,1+i]:=fieldbyname('tolltype').AsString ;
TollName[i-1]:=fieldbyname('tolltype').AsString ;
next;
end;
for i:=1 to iCountdo
begin
close;
sql.clear;
strSQL:='';
strSQL:='select sum(tollmoney) as tol from toll where sfdate='''+formatdatetime('yyyy-mm-dd',Date)+''' and tolltype='''+TollName[i-1]+''' ';
sql.Add(strSQL);
open;
Item[4,1+i]:=fieldbyname('tol').AsString ;
next;
end;
end;

end;
end;
finally
ExcelApplication1.Disconnect;
//ExcelApplication1.Quit;
ExcelApplication1.Free;
ExcelWorksheet1.Free;
ExcelWorkbook1.Free;
end;
 
如果我先设置好模板,然后怎么样调用这个模板呢
 
在模板中定义每个单元格该填什么字段内容,在DELPHI中对EXCEL进行逐格收索,对有标记的字段内容单元进行赋值即可.如果想提高收索速度,可以事先保存数据单元的地址...
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部