我已在窗体放了ExcelApplication1,ExcelWorkBook1,ExcelWorkSheet1,如果控制EXECL2003 第二列的宽度,并给导出数据自动画上表格,我现写的代码如下:
  ExcelApplication1.Connect;
  ExcelApplication1.Visible[0]:=True;
  ExcelApplication1.Workbooks.Add(Null,0);
  ExcelApplication1.Caption:='商品日报表统计';
  ExcelWorkBook1.ConnectTo(ExcelApplication1.Workbooks[1]);
  ExcelWorkSheet1.ConnectTo(ExcelWorkBook1.Sheets[1] as _WorkSheet);
  excelworksheet1.Columns[1].columnWidth:=50//运行到这一步执行不了

解决方案 »

  1.   

    ExcelApplication1.activesheet.columns[1].columnwidth:=50
    试试
      

  2.   

    ExcelApplication1.activesheet.columns[1].columnwidth:=50
    这个还是运行不了,提示如下然后光标停在columns[1]上
    [Error] CX_SPTJ.pas(227): Undeclared identifier: 'columns'
      

  3.   

    应该把代码写在Excel里
    VBA
      

  4.   

    这些天我也在搞excel,好头疼。这不是广告。也是群里有人提到EjunGrid这个表格控件,下载免费的用了下感觉不错。如果你的要求比较高,比如工作表》3,就得付费,否则都挺好用。而且还有大量demo参考
      

  5.   

    var
      ws:olevariant;
    begin
      ExcelApplication1.Connect;
      ExcelApplication1.Visible[0]:=True;
      ExcelApplication1.Workbooks.Add(Null,0);
      ExcelApplication1.Caption:='商品日报表统计';
      ws:=ExcelApplication1.activesheet;
      ws.columns[1].columnwidth:=50;
    end;用上面的代码吧,Delphi控制Office组件还是用后期绑定好,用导入类型库的早期绑定有很多麻烦事的。
      

  6.   

    为什么要用控件?
    直接用COM创建EXCEL不就OK了?
      

  7.   

         Application.ProcessMessages;      ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,1]:='序號';
          ExcelApp.Range['A2:A3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,2]:='廠別';
          ExcelApp.Range['B2:B3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,3]:='線別';
          ExcelApp.Range['C2:C3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,4]:='工號';
          ExcelApp.Range['D2:D3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,5]:='姓名';
          ExcelApp.Range['E2:E3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,6]:='班次';
          ExcelApp.Range['F2:F3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,7]:='直間區分';
          ExcelApp.Range['G2:G3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,8]:='機種類別';
          ExcelApp.Range['H2:H3'].MergeCells:=True;      ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,38]:='工作天數';
          ExcelApp.Range['I2:AM2'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,39]:='補上月平時';
          ExcelApp.Range['AN2:AN3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,40]:='補上月周日';
          ExcelApp.Range['AO2:AO3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,41]:='平時合計';
          ExcelApp.Range['AP2:AP3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,42]:='周日合計';
          ExcelApp.Range['AQ2:AQ3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,43]:='節日合計';
          ExcelApp.Range['AR2:AR3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,44]:='合計';
          ExcelApp.Range['AS2:AS3'].MergeCells:=True;
          ExcelApp.WorkBooks[1].WorkSheets[1].cells[2,45]:='加班合計';      ExcelApp.cells[3,9].value:='1';
          ExcelApp.ActiveSheet.Columns[9].ColumnWidth:=3;
          ExcelApp.cells[3,10].value:='2';
          ExcelApp.ActiveSheet.Columns[10].ColumnWidth:=3;
          ExcelApp.cells[3,11].value:='3';
          ExcelApp.ActiveSheet.Columns[11].ColumnWidth:=3;
          ExcelApp.cells[3,12].value:='4';
          ExcelApp.ActiveSheet.Columns[12].ColumnWidth:=3;
          ExcelApp.cells[3,13].value:='5';
          ExcelApp.ActiveSheet.Columns[13].ColumnWidth:=3;
          ExcelApp.cells[3,14].value:='6';
          ExcelApp.ActiveSheet.Columns[14].ColumnWidth:=3;
          ExcelApp.cells[3,15].value:='7';
          ExcelApp.ActiveSheet.Columns[15].ColumnWidth:=3;
          ExcelApp.cells[3,16].value:='8';
          ExcelApp.ActiveSheet.Columns[16].ColumnWidth:=3;
          ExcelApp.cells[3,17].value:='9';
          ExcelApp.ActiveSheet.Columns[17].ColumnWidth:=3;
          ExcelApp.cells[3,18].value:='10';
          ExcelApp.ActiveSheet.Columns[18].ColumnWidth:=3;
          ExcelApp.cells[3,19].value:='11';
          ExcelApp.ActiveSheet.Columns[19].ColumnWidth:=3;
          ExcelApp.cells[3,20].value:='12';
          ExcelApp.ActiveSheet.Columns[20].ColumnWidth:=3;
          ExcelApp.cells[3,21].value:='13';
          ExcelApp.ActiveSheet.Columns[21].ColumnWidth:=3;
          ExcelApp.cells[3,22].value:='14';
          ExcelApp.ActiveSheet.Columns[22].ColumnWidth:=3;
          ExcelApp.cells[3,23].value:='15';
          ExcelApp.ActiveSheet.Columns[23].ColumnWidth:=3;
          ExcelApp.cells[3,24].value:='16';
          ExcelApp.ActiveSheet.Columns[24].ColumnWidth:=3;
          ExcelApp.cells[3,25].value:='17';
          ExcelApp.ActiveSheet.Columns[25].ColumnWidth:=3;
          ExcelApp.cells[3,26].value:='18';
          ExcelApp.ActiveSheet.Columns[26].ColumnWidth:=3;
          ExcelApp.cells[3,27].value:='19';
          ExcelApp.ActiveSheet.Columns[27].ColumnWidth:=3;
          ExcelApp.cells[3,28].value:='20';
          ExcelApp.ActiveSheet.Columns[28].ColumnWidth:=3;
          ExcelApp.cells[3,29].value:='21';
          ExcelApp.ActiveSheet.Columns[29].ColumnWidth:=3;
          ExcelApp.cells[3,30].value:='22';
          ExcelApp.ActiveSheet.Columns[30].ColumnWidth:=3;
          ExcelApp.cells[3,31].value:='23';
          ExcelApp.ActiveSheet.Columns[31].ColumnWidth:=3;
          ExcelApp.cells[3,32].value:='24';
          ExcelApp.ActiveSheet.Columns[32].ColumnWidth:=3;
          ExcelApp.cells[3,33].value:='25';
          ExcelApp.ActiveSheet.Columns[33].ColumnWidth:=3;
          ExcelApp.cells[3,34].value:='26';
          ExcelApp.ActiveSheet.Columns[34].ColumnWidth:=3;
          ExcelApp.cells[3,35].value:='27';
          ExcelApp.ActiveSheet.Columns[35].ColumnWidth:=3;
          ExcelApp.cells[3,36].value:='28';
          ExcelApp.ActiveSheet.Columns[36].ColumnWidth:=3;
          ExcelApp.cells[3,37].value:='29';
          ExcelApp.ActiveSheet.Columns[37].ColumnWidth:=3;
          ExcelApp.cells[3,38].value:='30';
          ExcelApp.ActiveSheet.Columns[38].ColumnWidth:=3;
          ExcelApp.cells[3,39].value:='31';
          ExcelApp.ActiveSheet.Columns[39].ColumnWidth:=3;
      

  8.   

    引用
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs,excel2000,ComObj,DateUtils, cxGraphics, cxTextEdit, cxControls,
      cxContainer, cxEdit, cxMaskEdit, cxDropDownEdit, StdCtrls, DB, ADODB,
      Menus, cxLookAndFeelPainters, cxButtons, ComCtrls, cxCalendar,CommDeclare;var
    ExcelApp:Variant;