如何计算excel日期生成的自1900年以来的天数?

Excel 正在将日期 03/11/2021 转换为值 44535,这似乎是自 1900 年以来的几天。我试图找出一种使用我自己的 golang 库来计算它的方法。有没有人有这种问题?

非常感谢您的帮助



慕虎7371278
浏览 198回答 1
1回答

狐的传说

解决此问题的一个不那么有效的解决方法是addDaysd := time.Date(1900, 1, 1, 0, 0, 0, 0, time.UTC)fmt.Println(d) // 1900-01-01 00:00:00 +0000 UTCd2 := d.AddDate(0, 0, 44503)fmt.Println(d2) // 2021-11-05 00:00:00 +0000 UTC将打印:2021 年 5 月 11 日女巫比我们想要的多 2 天。在这里,我们可以使用 JavaScript 看到相同的结果:date = new Date(1900, 0, 1)// Mon Jan 01 1900 00:00:00 GMT-0338 (Amazon Standard Time)date.setDate(date.getDate() + 44503)// Fri Nov 05 2021 00:00:00 GMT-0400 (Amazon Standard Time)在对这 2 天进行一些研究后,我在@chux-reinstate-monica 的评论中发现了这一点:如果您选择使用 MS Excel 来检查您的工作笔记 2 件事:1)1900 年 1 月 1 日是第 1 天(不是自 1900 年 1 月 1 日以来的天数)和 2)根据 Excel 1900 年 2 月 29 日存在(一个错误在他们的代码中,他们拒绝修复。)所以我们可以从中减去 2 天得到:03/11/2021。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go