找回密码
 立即注册

QQ登录

只需一步,快速开始

Lynn.Dou 讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-2-7 10:10  /   查看:3038  /  回复:0
本帖最后由 lynn512 于 2021-2-7 10:12 编辑

背景:
有小伙伴在使用SJS或GcExcel时会有这样的疑问,为什么我在SJS或GcExcel里显示的日期,导出为Excel文件再使用Excel打开就显示为一串数字了呢?
本节课我们就来为大家介绍出现这个问题的几个场景、原因以及解决方案。
场景1
在SpreadJS设置日期选择器/时间选择器/月份选择器,然后选择日期、时间。

image.png593220214.png

如下图所示,导出的日期在Excel中显示为 一串数字。

image.png498625182.png

解析:
日期选择器/时间选择器/月份选择器 设置的日期,其单元格格式为“常规”。在SJS中会被格式化为所设置的单元格下拉框值类型。
但是Excel不支持单元格下拉框,所以格式仍为“常规”。

场景2:
在Excel复制 “2020/1/1”,粘贴至SJS,并使用GcExcel导出为Excel文件。
此时在Excel中打开该文件,日期所在单元格显示为数字。
而Excel对于常规格式的日期就会展示为一串数字。
您可以测试一下:在Excel中输入任意日期,然后设置格式为常规,此时单元格会展示为数字。

解析:
从Excel复制 “2020/1/1” 粘贴至SJS,剪贴板上为不带格式的文本。
所以粘贴到SJS时,"2020/1/1"为常规格式,此时导出的Excel文件自然也是常规格式。

解决方案:
上述两种场景原因是一致的,那就是日期所在的单元格格式为“常规”。
所在在导出excel文件前将这些日期所在的单元格设置好相应日期格式即可。

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部