进行数据导出到excel时,关闭都没有问题,但是当关机的时候,会提示是否保存对“book1”的更改?代码如下
procedure TForm1.Button2Click(Sender: TObject);
var
i,j,k:integer;
str,str1,sgrow,dir:string;
begin
try
excels:=createoleobject('excel.application');
sheets:=CreateOleObject('excel.sheet');
excels.visible:=false;
sheets:=excels.workbooks.add;
if savedialog1.Execute then
for i:=1 to sg.RowCount do
for j:=1 to sg.ColCount do
begin
excels.cells[i,j]:=sg.Cells[j-1,i-1];
end;
showmessage('导出操作完成!');
nfileformat:=sheets.fileformat;
if nfileformat=51 then
sheets.saveas(savedialog1.FileName,56)
else
sheets.saveas(savedialog1.FileName);
sheets.close;
excels.quit;
excels:=unassigned;
except
end;
end;
请问,这是除了什么问题?如何解决?
procedure TForm1.Button2Click(Sender: TObject);
var
i,j,k:integer;
str,str1,sgrow,dir:string;
begin
try
excels:=createoleobject('excel.application');
sheets:=CreateOleObject('excel.sheet');
excels.visible:=false;
sheets:=excels.workbooks.add;
if savedialog1.Execute then
for i:=1 to sg.RowCount do
for j:=1 to sg.ColCount do
begin
excels.cells[i,j]:=sg.Cells[j-1,i-1];
end;
showmessage('导出操作完成!');
nfileformat:=sheets.fileformat;
if nfileformat=51 then
sheets.saveas(savedialog1.FileName,56)
else
sheets.saveas(savedialog1.FileName);
sheets.close;
excels.quit;
excels:=unassigned;
except
end;
end;
请问,这是除了什么问题?如何解决?
sheets:=CreateOleObject('excel.sheet'); 好像没有free
-----------------------------------------
没有必要
如果要释放的话就用:
//******
excels.close
excels.quit;
excels:=unassigned;
//*********