我的环境是Delphi7+office2007+win2003,在使用excel时,无论是使用Delphi7自带的控件,还是用Comobj方式下,想改为sheet2为当前活动页发现都没有ExcelApplication1.Workbooks[2].Activate方法,请问是我的Delphi7的版本问题吗?还是其他原因!

解决方案 »

  1.   

    首先需要执行:
    MainFrm.ExcelApplication1.Connect; 
      

  2.   

    你的操作系统必须安装office2007
      

  3.   

    不是代码问题,文件打开都没有问题.
    网上都说“设置第2个工作表为活动工作表”是用ExcelApplication1.Workbooks[2].Activate,但是我查了下我deliph下的ExcelApplication1.Workbooks[2]下都根本没有Activate这个方法。不是是否是我的delphi问题。
      

  4.   

    第2个表是要加入一个表,才能操作:
      MainFrm.ExcelApplication1.Workbooks.Add(null,0);                           // 加入一个book
      MainFrm.ExcelWorkbook1.ConnectTo(MainFrm.ExcelApplication1.Workbooks[1]);  // 连接Workbooks[1]
      MainFrm.ExcelWorksheet1.ConnectTo(MainFrm.ExcelWorkbook1.Worksheets[1] as _Worksheet);
    一述代码供参考。
      

  5.   

    第2个表是要加入一个表,才能操作:
      MainFrm.ExcelApplication1.Workbooks.Add(null,0);                           // 加入一个book
      MainFrm.ExcelWorkbook1.ConnectTo(MainFrm.ExcelApplication1.Workbooks[1]);  // 连接Workbooks[1]
      MainFrm.ExcelWorksheet1.ConnectTo(MainFrm.ExcelWorkbook1.Worksheets[1] as _Worksheet);
    一述代码供参考。
      

  6.   

     我的只能写ExcelApplication1.Workbooks
    而没有ExcelApplication1.Workbooks[1]
    而是为什么?