try     Screen.Cursor := crHourglass;     DBGrid1.DataSource.DataSet.DisableControls;     bm := DBGrid1.DataSource.DataSet.GetBook;     DBGrid1.DataSource.DataSet.First;       ExcelApp := CreateOleObject('Excel.Application');       ExcelApp.WorkBooks.Add(xlWBatWorkSheet);   //此处delphi xe2出错,delphi 7没问题
     except
       screen.cursor:=crDefault;
      Application.Messagebox('电脑未安装Office中的Excel,必须安装才能使用Excel导出数据功能!', '提示', MB_ICONERROR + mb_Ok);     exit;
     end;
一、xe2下错误提示:  类workbooks的add方法无效,如何解决?
二、用delphi 7运行,不报错,  这两个版本还有什么差异??

解决方案 »

  1.   

    看下我这份代码行不行:
    http://download.csdn.net/detail/feiba7288/5058124
      

  2.   


    试试这个const xlWBATWorksheet = -4167;
    begin
      try
        ExcelApp := CreateOleObject('Excel.Application');
        ExcelApp.visible := True;
        ExcelApp.WorkBooks.Add(xlWBatWorkSheet);
      except on E: Exception do
        raise Exception.Create('Error Message');
      end;
    end;
      

  3.   

    const xlWBATWorksheet = -4167;把这个加上就行了,谢谢为什么delphi7中不需要啊?
      

  4.   

    xlWBATWorksheet就是一个'工作簿创建参数', 需要有声明才行.
    你查一下工作簿创建的参数说明