d7转EXCEL office2007以上版本问题

daniel2008 2019-02-18 10:06:52
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

请高手帮忙,谢谢!!
...全文
384 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Grefen 2019-06-14
  • 打赏
  • 举报
回复
试试第三方控件 XLSReadWriteII5
lyhoo163 2019-03-02
  • 打赏
  • 举报
回复
D7只能对应office2003.
halqj 2019-02-28
  • 打赏
  • 举报
回复
不建议转成office2007版本之后,D7对office2003还可以。
victor_yang 2019-02-27
  • 打赏
  • 举报
回复
https://blog.csdn.net/victor_yang/article/details/86570334
我一直有导出excel的操作,不需要考虑excel的版本,但你要逐个单元格的操作,其实也是很快的。
daniel2008 2019-02-26
  • 打赏
  • 举报
回复
引用 1 楼 doloopcn 的回复:
D7的Excel-OleObject最高版本是OfficeXP XE10的也许能支持Office2007,没有实际测试过 也就 是说,D7的Excel Server即使能打开Offic2007文档也是以兼容的方式 其实,如果Excel文档是数据表格,建议使用ADO的方式访问Excel文档更具备逻辑性可读性
我中间引用的是流写入,如果循环一笔一笔写入是OK的
lyhoo163 2019-02-19
  • 打赏
  • 举报
回复
D7本向是解决不了的,试试通过第三方控件解决。或通过XE解决。
doloopcn 2019-02-19
  • 打赏
  • 举报
回复
D7的Excel-OleObject最高版本是OfficeXP
XE10的也许能支持Office2007,没有实际测试过

也就 是说,D7的Excel Server即使能打开Offic2007文档也是以兼容的方式

其实,如果Excel文档是数据表格,建议使用ADO的方式访问Excel文档更具备逻辑性可读性

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧