procedure TReportFrameBaseW.ToolButton1Click(Sender: TObject);
var
excelapp,workbook:variant;
row,column:integer;
ext,name:string;
begin
if not base_cds.Active then
abort;
savedialog1.Filter := 'execl files (*.xls)|*.xls' ;
if savedialog1.Execute then
begin
name:=savedialog1.FileName+ext;
if FileExists(name) then
if MessageBox(Self.Handle, PChar('文件已经存在,是否覆盖?'), '信息提示', MB_YESNO)=id_no then
begin
abort;
end
else
DeleteFile(name);
try
screen.Cursor := crHourGlass;
excelapp:=createoleobject('excel.application');
workbook:=excelapp.workbooks.add;
row:=1;
column:=1;
base_cds.DisableControls ;
for column:=1 to Base_cds.Fields.Countdo
excelapp.cells[row,column]:=Base_cds.Fields[column-1].FieldName ;
row:=row+1;
while not Base_cds.Eofdo
begin
for column:=1 to Base_cds.Fields.Countdo
excelapp.cells[row,column]:=Base_cds.Fields[column-1].AsString ;
Base_cds.Next ;
row:=row+1;
end;
// if savedialog1.Execute then
workbook.saveas(Name);
finally
excelapp.quit;
end;
Base_cds.EnableControls ;
screen.Cursor := crDefault;
MessageBox(Self.Handle, PChar('数据输出完毕'), '信息提示', MB_ok);
end;
end;
以上是我项目中的代码部分你修改一下!