数据导出(50分)

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

gzwwyq

Unregistered / Unconfirmed
GUEST, unregistred user!
我想把,我的dbgrid1里显示得数据,导出成excel形式,请高手帮忙!
多谢谢多谢谢!
 
procedure TForm1.Button3Click(Sender: TObject);
var
fieldNum: integer;
i,j : integer;
exls,sheet: variant;
begin
try
exls:=createoleobject('Excel.application');
sheet:=createoleobject('excel.sheet');
except
application.MessageBox('please install MICROSOFT EXCEL first !','information',mb_ok+mb_iconinformation);
exit;
end;
sheet:=exls.workBooks.Add;
with datamodule2.ADOQuery1 do
begin
DisableControls;
fieldNum := dbgrid1.fieldCount;
for i:=1 to fieldNum do
begin
exls.Cells[1,i].value:=Fields[i-1].FieldName;
end;
first;
i:=2;
while not eof do
begin
for j:=1 to fieldNum do
begin
exls.Cells[i,j]:=fields[j-1].AsString;
end;
next;
i:=i+1;
end;
EnableControls;
exls.visible:=true;
end;
end;
 
用SMExport Suite 组件几行语句就搞定
 
用组件是最省事的, 自己写也没多少语句。
 
后退
顶部