DELPHI导出Excel2007之后版本,报格式太旧的问题
  try
    ExcelApp:= TExcelApplication.Create(Self);
    ExcelWorkbook:= TExcelWorkbook.Create(Self);
    ExcelWorksheet:= TExcelWorksheet.Create(Self);
    try
      Screen.Cursor := crHourGlass;
      ExcelApp.ConnectKind := ckNewInstance;
      ExcelApp.Connect;
      ExcelWorkbook.ConnectTo(ExcelApp.Workbooks.Add(emptyparam, 1));
      ExcelWorksheet.ConnectTo(ExcelWorkbook.Worksheets[1] as _Worksheet);
      ExcelWorksheet.Name :=edit1.Text;
      outdata(ds);
      ExcelWorksheet.Range['A1',GetColumnCharacters(Lbx_ExcelFields.Items.Count)+'1'].EntireColumn.Autofit;
      ExcelApp.Visible[1]:=true;执行ExcelWorkbook.ConnectTo(ExcelApp.Workbooks.Add(emptyparam, 1));
时报格式太旧,该函数应该是关联excel2000,请问对于excel2007之后版本,怎么解决,谢谢了。

解决方案 »

  1.   

    这个不清楚,你可以找个控件导出xls,不过格式也是旧的,但是2007应该能打开。
      

  2.   

    别用这个控件,你直接用
     excel1: Variant;excel1 := CreateOleObject('Excel.Application');
    excel1.WorkBooks.Open(文件名);
    excel1.WorkSheets['sheet1'].Activate;excel1.Cells[row, col]:表示单元格
    excel1.ActiveSheet.Columns[col].Insert;插入列
    excel1.Cells.Columns.AutoFit;自动列大小
    excel1.visible := true;是excel可见。
      

  3.   

    delphi控件版的Office控件本质上还是通过OLE,但版本更新上没有跟上MS的步伐
    建议直接使用OLE接口,代码如2楼