Delphi CreateOLEObject使用Excel问题 20

Win7下delphi在使用CreateOLEObject('Excel.Application')这句时会报如下错误(程序可以继续执行),请问怎么消除此错误,另外通过此... Win7 下delphi 在使用CreateOLEObject('Excel.Application')这句时会报如下错误(程序可以继续执行),请问怎么消除此错误,另外通过此方法产生的Excel.exe有时会杀不掉怎么解决? 展开
 我来答
gcbjoy
2015-04-29 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1.1万
采纳率:92%
帮助的人:2157万
展开全部
以下是使用ole对象调用excel的标准例程:
procedure TForm1.Button7Click(Sender: TObject);
var
        i:integer;
      v:variant;
       sheet:variant;
begin
   try
        v:=createoleobject('excel.application');
        v.visible:=true;
        v.workbooks.add;
        v.workbooks[1].worksheets[1].name:='知识库';
        sheet:=v.workbooks[1].worksheets['知识库'];
        sheet.cells[1,1]:='日期';
        sheet.cells[1,2]:='分类';
        sheet.cells[1,3]:='知识主题';
        sheet.cells[1,4]:='索引关键字';
        sheet.cells[1,5]:='提交';
        sheet.cells[1,6]:='ext';

        i:=2;
        while not table1.eof do begin
               sheet.cells[i,1]:=table1.Fieldbyname('日期').AsDateTime;
               sheet.cells[i,2]:=''''+table1.Fieldbyname('分类').Asstring;
               sheet.cells[i,3]:=''''+table1.Fieldbyname('知识主题').Asstring;
               sheet.cells[i,4]:=''''+table1.Fieldbyname('索引关键字').Asstring;
               sheet.cells[i,5]:=table1.Fieldbyname('提交').Asboolean;  //string;
               sheet.cells[i,6]:=''''+table1.Fieldbyname('ext').Asstring;

               table1.MoveBy(1);
               i:=i+1;
        end;
        v.visible:=true;
     except
        showmessage('fail init excel');
        v.displayalerts:=false;
        v.quit;
        exit;
     end;
end;

一般都要用try......except......end结构。
追问
用过try异常捕捉,但是就是那一句代码出的问题,其余的代码都不会报错,到上面那一句就会提示那个异常。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式