d7中转EXCEL2003是OK的,超过35536时会另存一个文件;但是,现在转EXCEL2007中 超过65536时,在超过此65536行的记录不会带出来,按理说EXCEL2007中支持的记录行数是100多万笔,可以达到1048575。问题是:如果转出的记录数超过65536,转出来的EXCEL记录数最多65536行,超过的行不会出来??转EXCEL代码如下:
ExcelApp := CreateOleObject('Excel.Application');
....   
 ExcelWorkBook:=ExcelApp.WorkBooks.Add(FileNam);
 ExcelSheet:=ExcelApp.workSheets[1];
...
  ShowMessage('资料保存在:'+FileNam);
  ExcelApp.ActiveWorkbook.SaveAs(FileNam,,'', '',False,False);
  ExcelApp.WorkBooks.close; FileNam为目录下的文件:如 c:\aa.xlsx请高手帮忙,谢谢!!
 

解决方案 »

  1.   

    D7的Excel-OleObject最高版本是OfficeXP
    XE10的也许能支持Office2007,没有实际测试过也就 是说,D7的Excel Server即使能打开Offic2007文档也是以兼容的方式其实,如果Excel文档是数据表格,建议使用ADO的方式访问Excel文档更具备逻辑性可读性
      

  2.   

    D7本向是解决不了的,试试通过第三方控件解决。或通过XE解决。
      

  3.   

    https://blog.csdn.net/victor_yang/article/details/86570334
    我一直有导出excel的操作,不需要考虑excel的版本,但你要逐个单元格的操作,其实也是很快的。
      

  4.   

    不建议转成office2007版本之后,D7对office2003还可以。
      

  5.   

    D7只能对应office2003.
      

  6.   

    试试第三方控件 XLSReadWriteII5