Columns[1].SetWidth(....); 

解决方案 »

  1.   

    这个一定好使,我用的ole,在use中加入comobj!
     var
      eapp,eworkbook:variant;
    begin
        eapp:=createoleobject('excel.application');
        eapp.visible:=false;
        eworkbook:=eapp.workbooks.add;
        eworkbook.worksheets[1].name:='java';
        eworkbook.worksheets[1].Columns[1].ColumnWidth := 40;
        //exworksheet.columns.autofit;//使各列自动对齐
        eapp.activeworkbook.saveas('c:\222.xls');
        eapp.workbooks.close;
        eapp.quit;
        eapp:=unassigned;
        showmessage('ok!');
    end;
      

  2.   

    上面有一句话写错了,改为
    //eworkbook.worksheets[1].columns.autofit;//如不自定义宽度,可以使各列自动对齐
        
      

  3.   

    用ExcelWorksheet就不能设置行高和列宽了吗?!
      

  4.   

    我也用ExcelWorksheet控件试了一下,确实不让改!
    不过用ExcelWorksheet.columns.autofit可以!
      

  5.   


    var
    tp: variant;
    在BEGIN
    tp := excelapplication1.Workbooks[1].Worksheets[1] ;
     excelworksheet1.Range[tp.Columns[2],tp.Columns[2]].ColumnWidth  := 10 ;
    这样就行了。真怪!!!