【发布时间】:2012-11-28 04:59:07
【问题描述】:
我有要写入 Excel 文件的 Time 对象。我正在使用 axlsx 库。将日期转换为单元格数据的类是DateTimeConverter,它将其转换为浮点时间戳。
时间按预期显示为mm/DD/YYYY HH:MM:SS,但值是格林威治标准时间。
有没有办法让 Excel 格式化特定时区或读者当地时区的时间?我目前的解决方案是将格式化的时间导出为字符串,对此我很不满意。
有没有办法在不添加 VBA 宏的情况下做到这一点? (请注意,我没有尝试根据链接的“重复”问题使用 VBA 宏将本地时间转换为 GMT,而是将 GMT 时间显示为本地时间 - 如果可能的话,最好不使用 VBA 宏。)
【问题讨论】:
-
你的excel文件写得怎么样?您应该真正将日期存储为 OLE 自动化日期,它是 Excel 的双精度和本机存储。这样您就不会遇到地区/时区问题。
-
@PhilipABarnes 将数据转换为整数。它似乎被 excel 正确解析为 GMT 时间。