刚才还在说自己多想可以搞定,不行了,
http://community.csdn.net/Expert/topic/3245/3245026.xml?temp=.1272547如何选定一行,如我要一次性设置一列或一行的NumberFormat为Text,
难道只有这样操作:
  R.Range_['A1', 'A65536'].NumberFormat := '@';
 R.Range_['A1', 'IV1'].NumberFormat := '@'; //这样做太蠢啊
// IV表示列的最大数目为255列注:请不要告诉我用Variant操作Excel的方法,
var
  Sheets, Range: Variant;
begin
 Sheets := XlApp.Workbooks[1].Sheets[1];
  Range := Sheets.Columns;
  Range.Columns[1].ColumnWidth := 15;
end;否则删除!

解决方案 »

  1.   

    不使用Variant不能完全控制Excel?
      

  2.   

    sheet有個userrange 之類的東西, 也就相當你的
    >>  R.Range_['A1', 'A65536'].NumberFormat := '@';
    >> R.Range_['A1', 'IV1'].NumberFormat := '@'; //这样做太蠢啊
    但沒選擇那那麼多而已
      

  3.   

    >>不使用Variant不能完全控制Excel?
    其實沒大區別的, 我感覺!完全控制 的概念是什麼??? 真正的完全應該是不能的, 我想, 用什麼第三方的都是不可能的
      

  4.   

    to aiirii,
    procedure TfrmMain.btnByVntClick(Sender: TObject);
    var
      Sheet, Range: Variant;
    begin
      LoadExcelApp;
      try
        Sheet := XlApp.Workbooks[1].Sheets[1];
        Sheet.PageSetup.LeftMargin := 150;    Range := Sheet.Columns;
        Range.ColumnWidth := 8;
        Range.Columns[1].ColumnWidth := 15;
        Range.Columns[2].ColumnWidth := 20;
        Range.Columns[3].ColumnWidth := 3;
        Range.Columns[4].ColumnWidth := 12;
        Range.Columns[5].ColumnWidth := 12;
        Range.Columns[6].ColumnWidth := 12;
        Range.Columns[7].ColumnWidth := 12;    Range := Sheet.Range['A1 : L1'];
        Range.Merge;    Range := Sheet.Range['A4 : L4'];
        Range.Columns[1].HorizontalAlignment := xlHalignCenter;
        Range.Columns[1].Font.Bold := True;
        Range.Columns[1].Font.Size := 16;
        Range.Merge;    Range := Sheet.Rows;
        Range.Rows[1].Font.Bold := True;
        Range.Rows[1].Font.Size := 20;
        Sheet.Cells[1, 1] := 'Automation Microsoft Excel';    Sheet.Cells[3, 1] := 'Author: SNCV7';
        Sheet.Cells[3, 2] := 'Date: Aug 01, 2004';
        Sheet.Cells[4, 1] := 'Data Listing';    Range := Sheet.Range['D6 : G14'];
        Range.Formula := '= Rand()';
        Range.Font.Color := clRed;
        Range.Columns.Interior.ColorIndex := 4;
        Range.Borders.LineStyle := xlContinuous;
      finally
        // if disconnected, you have to shut down the Excel manually.
        // XlApp.Disconnect;
      end;
    end;
      

  5.   

    to aiirii, 
    procedure TfrmMain.btnIntfClick(Sender: TObject);
    var
      R: Range;
    begin
      LoadExcelApp;
      R := XlApp.Columns;
      R.ColumnWidth := 8;  R.Range_['A1', 'A1'].ColumnWidth := 15;
      R.Range_['B1', 'B1'].ColumnWidth := 20;
      R.Range_['C1', 'C1'].ColumnWidth := 3;
      R.Range_['D1', 'D1'].ColumnWidth := 12;
      R.Range_['E1', 'E1'].ColumnWidth := 12;
      R.Range_['F1', 'F1'].ColumnWidth := 12;
      R.Range_['G1', 'G1'].ColumnWidth := 12;  // How to set a whole colomn's NumberFormat?
      // R.Range_['D1', 'D65536'].NumberFormat := '@';
      R.Range_['D3', 'D3'].NumberFormat := '@';  R := XlApp.Range['A1', 'L1'];
      R.Merge(EmptyParam);
      R.Font.Bold := True;
      R.Font.Size := 20;
      R.Item[1, 1] := 'Automation Microsoft Excel';  R := XlApp.Range['A4', 'L4'];
      R.HorizontalAlignment := xlHalignCenter;
      R.Font.Bold := True;
      R.Font.Size := 16;
      R.Merge(EmptyParam);  R := XlApp.Range['A3', 'L3'];
      R.Item[1, 1] := 'Author: SNCV7';
      R.Item[1, 2] := 'Date: Aug 01, 2004';
      R.Item[2, 1] := 'Data Listing';
      R.Item[1, 4] := 'Pi = 3.1415926535897932384626';  R := XlApp.Range['D6', 'G14'];
      R.Formula := '=Rand()';
      R.Font.Color := clRed;
      R.Interior.ColorIndex := 4;
      R.Borders.LineStyle := xlContinuous;  // If click the btnByIntf first, enable the following code to make sure the
      // program do the right things after clicking the btnByVnt.
      // XlApp.Disconnect;
    end;
      

  6.   

    搞定了!
    var
      B: _WorkBook;
      S: _WorkSheet;
      LCID: Integer;
    begin
      LCID := GetUserDefaultLCID;
      B := XlApp.WorkBooks.Add(EmptyParam,LCID);
      S := B.Sheets[1] as _WorkSheet;
      S.PageSetup.LeftMargin := 150; // Can works successfully.
    end;在此感谢王安鹏的文档。
     http://dev.csdn.net/develop/article/13/13310.shtm