当前位置:主页>仓库管理软件> 列表

请帮我看看以下代码是否有问题,程序执行完毕后在进程里的的E 找进销存管理

记账软件版1楼: 请大家帮我看看,现在只剩下导出后将EXCEL关闭就可以了,谢谢!
procedure TfrmDay.Button2Click(Sender: TObject);
var
xlapp,xlsheet,szvalue:variant;
i,l,u,q,groupint:integer;
ua:string;
Arowa:array[1..14] of word;
begin
screen.Cursor:=crappstart;
xlapp:=createoleobject(''Excel.application'');
try
xlsheet:=createoleobject(''excel.sheet'');
xlsheet:=xlapp.workbooks.open(extractfilepath(application.exename)+''data\module.xls'');
sqlstrg:=''select distinct group1 from cbpeople'';
with ado_exec do
begin
close;
sql.Clear;
sql.Add(sqlstrg);
open;
groupint:=recordcount+1;
end;
for i:=1 to groupint do
begin
arowa[i]:=5;
end;
//adoquery1.Open;
with ADOQUERY1 do
begin
disablecontrols;
first;
while not eof do
begin
u:=strtoint(leftstr(trim(fieldbyname(''group1'').AsString),length(trim(fieldbyname(''group1'').AsString))-2));
for i:=1 to fields.Count-2 do
begin
szvalue:=fields[i-1].AsString ;
l:=i+1;
xlsheet.worksheets[u].cells[arowa[u],l]:=trim(szvalue);
end;
next;
inc(arowa[u]);
end;
for i:=1 to groupint do
begin
xlsheet.worksheets[i].cells[2,15]:=date();
end;
first;
enablecontrols;
screen.Cursor:=crdefault;
xlsheet.saveas(extractfilepath(application.exename)+''report_out\薪资报表\''+datetostr(date())+''.xls'');
xlsheet.close;
xlapp.quit;
xlapp:=unassigned;
showmessage(''资料导出完毕!'');
end;
except
messagebox(handle,''aaa'',''sbbbb'',mb_iconexclamation);
end;

2楼: 我以前也碰到这个问题
就是你的xlsheet或着xlapp没有完全释放
具体忘了 如进销存管理

3楼: xlsheet:=nil;
只能这样释放

4楼: 问题还未解决,请各位帮忙,谢谢!

5楼: xlsheet.close;
---
把这个去掉看看。

6楼: 还是不行呀