DBGridEh 导出 WPS 的问题???

lpq213140808 2008-12-01 10:14:19
以下是导出WPS或EXCEL的代码:

procedure P_DBGridToExcelFile(DBGridEh1:TDBGridEh);
var
ExpClass:TDBGridEhExportClass;
Ext:String;
begin
with MainForm do
begin
SaveDialog1.FileName := 'MyFileName';
if SaveDialog1.Execute then
begin
case SaveDialog1.FilterIndex of
6: begin ExpClass := TDBGridEhExportAsText; Ext := 'et'; end; //WPS 的格式
5: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
2: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
3: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
4: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
1: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
else
ExpClass := nil; Ext := '';
end;
if ExpClass <> nil then
begin
if UpperCase(Copy(SaveDialog1.FileName,Length(SaveDialog1.FileName)-2,3)) <> UpperCase(Ext) then
SaveDialog1.FileName := SaveDialog1.FileName + '.' + Ext;
SaveDBGridEhToExportFile(ExpClass,DBGridEh1,SaveDialog1.FileName,True);
end;
end;
end;
end;

如果选择导出为EXCEL格式,数据格式是没有任何问题的.
如果选择导出WPS格式(*.et),则导出后如果是字符格式,WPS回把字符前面的0去掉,如果数值很大,则会变成科学计数法.
但是如果类格式选择为 ExpClass := TDBGridEhExportAsXLS ,可以按DBGRIDEH显示的格式一样的导出来,但打开
WPS时会提示"打开旧版本数据可能丢失",打开后双击某个单元格,数据又变成科学计数法了.请问有什么办法解决?
...全文
108 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lpq213140808 2008-12-04
  • 打赏
  • 举报
回复
没有人用过WPS吗? 请大家支持国产软件啊!!!
lpq213140808 2008-12-02
  • 打赏
  • 举报
回复
在哪里设置,好象不行吧?
panrongzeng 2008-12-01
  • 打赏
  • 举报
回复
WPS问题吧,你看看设置那里是否可以设置

2,497

社区成员

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

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