您的位置:首页 > 编程语言 > Delphi

delphi 调用excel,修改excel并显示

2007-10-22 10:14 639 查看
目的:将查询结果输出到excel,并打开excel


function TFrmDBCZ_Report_DLBBFK.ProcessExcel(date: string): Boolean;


var


xlapp,MySheet,MyBooks:Variant;


i,j:Integer;


filename,savefile :string;


begin


filename := ExtractFilePath(Application.ExeName)+'报表模版分矿转供电量明细表.xls';


savefile := ExtractFilePath(Application.ExeName)+'报表'+copy(date,1,4)+'年'+copy(date,6,2)+'月分矿转供电量明细表.xls';


if FileExists(savefile) then


begin


if not DeleteFile(savefile) then


begin


ShowMessage('文件'+savefile+'可能被占用,请关闭文件重试');


Result := False;


Exit;


end;


end;


xlapp:= CreateOleObject('Excel.Application');


xlapp.Workbooks.Open(filename);


MyBooks := xlapp.workbooks[1];


MySheet := xlapp.Workbooks[1].WorkSheets['电量报表(分矿)'] ;


qry1.Close;


qry1.Parameters.ParamByName('lb').Value := '汇总';


qry1.Open;


j :=4;


for j := 4 to 12 do


begin


for i := 5 to 13 do


begin


MySheet.Cells[j,i] := qry1.Fields[i+1].AsInteger;


end;


qry1.Next;


end;


mybooks.saved := True;//如果要关闭某个已更改的工作簿,但又不想保存它或者不想出现保存提示


mybooks.saveas(savefile);


MyBooks.close;


xlapp.quit;


xlapp:= CreateOleObject('Excel.Application');


xlapp.Workbooks.Open(savefile);


xlapp.visible := True;


//OleContainer1.CreateObjectFromFile(savefile,false);


//OleContainer1.DoVerb(0);




Result := True;


end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: