说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

EXCEL的问题?

编辑:说三道四文库 发布时间:2018-06-24 12:09
HTML文档下载 WORD文档下载 PDF文档下载
我用定时器打开一个已存在的EXCEL文件,定时向文件中写入一些内容,几次后就出错,提示文件找不到,一般到第四、五次。为什么?请各位帮忙。
try
   try
   Eapp.Connect;
   Ebook.ConnectTo(Eapp.Workbooks.Open(excelfilename,EmptyParam,false,EmptyParam,
       EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,
       EmptyParam,EmptyParam,EmptyParam,0));
   Esheet.ConnectTo(Ebook.Worksheets.Item[1] as _WorkSheet);
   Esheet.Activate;
   for i:=1 to n do
   begin
    myvalue:=1234;
    Esheet.Cells.Item[1,n]:=now;
    Esheet.Cells.Item[i+1,n]:=myvalue;
   end;

   if not Eapp.ActiveWorkbook.Saved[0] then
   begin
   Eapp.DisplayAlerts[0]:=false;
   Esheet.SaveAs(excelfilename);
   end;
   Ebook.Close(false);
   except
   Timer1.Enabled:=false;
   end;
 finally
  try
   eapp.Quit;
   esheet.Disconnect;
   ebook.Disconnect;
   eapp.Disconnect;
  except
  end;
 end;
估计是你的EXCEL进程没有释放掉,具体忘记怎么写了,反正你要反反复复多试几次,

   eapp.Quit;
   esheet.Disconnect;
   ebook.Disconnect;
   eapp.Disconnect
   FreeAndNil(espp);
大概是这样,记不清了,不好意思
其它控件有XLSReadWriteII,可以去http://www.axolot.com下载,不需要excel,用ole有很多问题的
to:月光
  XLSReadWriteII需要money,有free的吗?
up
UP
我换了台配置高一些的机子,执行了10次没有这一现象,可能与机子执行速度有关,在还没来得及释放时,又来打开,所以出错。但程序执行期间,若打开EXCEL进行相关操作时,程序要调用EXCEL时会出错,也会关闭当前的EXCEL,有办法不让它有相互干扰吗?
谢谢各位的参与!
用EXCEL确实不方便,不用了,改用数据库了。
新版本在程序开始会有个提示框,旧版本的没有,不过旧版本有些bug,很不巧其中一个被我遇上了,所以还是用新版本好了
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘