var
  Excel : Variant;  Excel := CreateOleObject('Excel.Application');
  Excel.Visible := False;
  Excel.WorkBooks.open[filename := 'c:\Fxls.xls'];使用这种方法连接Excel之后我想复制其中的一个Sheet页,然后再删除其中的几行应该如何实现阿在线等待谢谢先

解决方案 »

  1.   

    Delphi控制Excel2000心得 
    主要解答者: tiexinliu 提交人: tiexinliu 
    审核者: l_xiaofeng 社区对应贴子: 查看 
         A :  类 别:COM  &  ActiveX  
    (一)  使用动态创建的方法  
    首先创建  Excel  对象,使用ComObj:  
    var  ExcelApp:  Variant;  
    ExcelApp  :=  CreateOleObject(  'Excel.Application'  );  
    1)  显示当前窗口:  
    ExcelApp.Visible  :=  True;  
    2)  更改  Excel  标题栏:  
    ExcelApp.Caption  :=  '应用程序调用  Microsoft  Excel';  
    3)  添加新工作簿:  
    ExcelApp.WorkBooks.Add;  
    4)  打开已存在的工作簿:  
    ExcelApp.WorkBooks.Open(  'C:\Excel\Demo.xls'  );  
    5)  设置第2个工作表为活动工作表:  
    ExcelApp.WorkSheets[2].Activate;    
    或    
    ExcelApp.WorksSheets[  'Sheet2'  ].Activate;  
    6)  给单元格赋值:  
    ExcelApp.Cells[1,4].Value  :=  '第一行第四列';  
    7)  设置指定列的宽度(单位:字符个数),以第一列为例:  
    ExcelApp.ActiveSheet.Columns[1].ColumnsWidth  :=  5;  
    8)  设置指定行的高度(单位:磅)(1磅=0.035厘米),以第二行为例:  
    ExcelApp.ActiveSheet.Rows[2].RowHeight  :=  1/0.035;  //  1厘米  
    9)  在第8行之前插入分页符:  
    ExcelApp.WorkSheets[1].Rows[8].PageBreak  :=  1;  
    10)  在第8列之前删除分页符:  
    ExcelApp.ActiveSheet.Columns[4].PageBreak  :=  0;  
    11)  指定边框线宽度:  
    ExcelApp.ActiveSheet.Range[  'B3:D4'  ].Borders[2].Weight  :=  3;  
    1-左  2-右  3-顶  4-底  5-斜(  \  )  6-斜(  /  )  
    12)  清除第一行第四列单元格公式:  
    ExcelApp.ActiveSheet.Cells[1,4].ClearContents;  
    13)  设置第一行字体属性:  
    ExcelApp.ActiveSheet.Rows[1].Font.Name  :=  '隶书';  
    ExcelApp.ActiveSheet.Rows[1].Font.Color  :=  clBlue;  
    ExcelApp.ActiveSheet.Rows[1].Font.Bold  :=  True;  
    ExcelApp.ActiveSheet.Rows[1].Font.UnderLine  :=  True;  
    14)  进行页面设置:  
    a.页眉:  
    ExcelApp.ActiveSheet.PageSetup.CenterHeader  :=  '报表演示';  
    b.页脚:  
    ExcelApp.ActiveSheet.PageSetup.CenterFooter  :=  '第&P页';  
    c.页眉到顶端边距2cm:  
    ExcelApp.ActiveSheet.PageSetup.HeaderMargin  :=  2/0.035;  
    d.页脚到底端边距3cm:  
    ExcelApp.ActiveSheet.PageSetup.HeaderMargin  :=  3/0.035;  
    e.顶边距2cm:  
    ExcelApp.ActiveSheet.PageSetup.TopMargin  :=  2/0.035;  
    f.底边距2cm:  
    ExcelApp.ActiveSheet.PageSetup.BottomMargin  :=  2/0.035;  
    g.左边距2cm:  
    ExcelApp.ActiveSheet.PageSetup.LeftMargin  :=  2/0.035;  
    h.右边距2cm:  
    ExcelApp.ActiveSheet.PageSetup.RightMargin  :=  2/0.035;  
    i.页面水平居中:  
    ExcelApp.ActiveSheet.PageSetup.CenterHorizontally  :=  2/0.035;  
    j.页面垂直居中:  
    ExcelApp.ActiveSheet.PageSetup.CenterVertically  :=  2/0.035;  
    k.打印单元格网线:  
    ExcelApp.ActiveSheet.PageSetup.PrintGridLines  :=  True;  
    15)  拷贝操作:  
    a.拷贝整个工作表:  
    ExcelApp.ActiveSheet.Used.Range.Copy;  
    b.拷贝指定区域:  
    ExcelApp.ActiveSheet.Range[  'A1:E2'  ].Copy;  
    c.从A1位置开始粘贴:  
    ExcelApp.ActiveSheet.Range.[  'A1'  ].PasteSpecial;  
    d.从文件尾部开始粘贴:  
    ExcelApp.ActiveSheet.Range.PasteSpecial;  
    16)  插入一行或一列:  
    a.  ExcelApp.ActiveSheet.Rows[2].Insert;  
    b.  ExcelApp.ActiveSheet.Columns[1].Insert;  
    17)  删除一行或一列:  
    a.  ExcelApp.ActiveSheet.Rows[2].Delete;  
    b.  ExcelApp.ActiveSheet.Columns[1].Delete;  
    18)  打印预览工作表:  
    ExcelApp.ActiveSheet.PrintPreview;  
    19)  打印输出工作表:  
    ExcelApp.ActiveSheet.PrintOut;  
    20)  工作表保存:  
    if  not  ExcelApp.ActiveWorkBook.Saved  then  
    ExcelApp.ActiveSheet.PrintPreview;  
    21)  工作表另存为:  
    ExcelApp.SaveAs(  'C:\Excel\Demo1.xls'  );  
    22)  放弃存盘:  
    ExcelApp.ActiveWorkBook.Saved  :=  True;  
    23)  关闭工作簿:  
    ExcelApp.WorkBooks.Close;  
    24)  退出  Excel:  
    ExcelApp.Quit;  
      
      

  2.   


    Excel.Application.ActiveSheet.copy; //复制到粘贴版;
    Excel.Application.ActiveSheet.Rows(3).Delete; //删除第三行;其实你机器上有帮助的,查找“VBAXL9.CHM”这个文件,自己研究好了,免得总问人
      

  3.   

    ExcelApp := CreateOleObject('Excel.Application');
      ExcelApp.Visible := True;
      ExcelApp.WorkBooks.Open('E:\ExcelTest\test.xls');
      ExcelApp.WorksSheets[1].Activate;为什么运行到Activate的时候出错,错误信息是:什么WorksSheets方法不被OLE支持这个该怎么解决阿
      

  4.   

    这个解决,
    ExcelApp.WorksSheets[1].Activate 写错了ExcelApp.WorkSheets[1].Activate
      

  5.   

    VBAXL9.CHM你们机器上原来就有这个文件吗
    怎么我的没有,
    还得到网上找了一个