将日期转换为数字的公式[关闭]
Posted
技术标签:
【中文标题】将日期转换为数字的公式[关闭]【英文标题】:Formula to convert date to number [closed] 【发布时间】:2013-11-12 08:07:09 【问题描述】:我想知道将 2013 年 10 月 26 日的日期转换为 Excel 中的 41573 数字的公式。
就像如何将 10/26/2013 转换为 41573。
【问题讨论】:
自 1900 年 1 月 1 日以来的天数。Excel 中使用的函数是DATEVALUE
。它将返回天数和小数天数(因此 2013 年 10 月 26 日中午将是 41573.5)。
我的问题有点不同;我在 excel 中有一个 datetime
值,当我将其转换为文本时,它返回 42278.0034722
。如何计算时间?
【参考方案1】:
现代日期的 Excel 数字最容易计算为自公历 1899 年 12 月 30 日以来的天数。
Excel 将 01/00/1900(即 12/31/1899)视为对应于 0,并将 1900 年错误地视为闰年。因此,对于 1900 年 3 月 1 日之前的日期,Excel 数字实际上是 1899 年 12 月 31 日之后的天数。
但是,Excel 不会格式化任何低于 0 的数字(-1 给你##########),所以这只对“01/00/1900”到 02/28/1900 很重要,使得以 1899 年 12 月 30 日为基准更容易。
解决闰年 1900 错误的 DB2 SQL 中的完整函数:
SELECT
DAYS(INPUT_DATE)
- DAYS(DATE('1899-12-30'))
- CASE
WHEN INPUT_DATE < DATE('1900-03-01')
THEN 1
ELSE 0
END
【讨论】:
Coyne - 我刚刚花了一个小时试图理清两天的偏移量。非常感谢您的解释!干得好。 感谢清晰的解释!如果其他人需要它来将 Excel 时间转换为 UTC 时间(在 javascript 中读取为 CSV),我已经解释了它in a gist。【参考方案2】:如果您将单元格的格式更改为常规,那么这将在后台显示单元格的日期值 Excel 将日期保存为自 1900 年 1 月 1 日以来的天数
如果您的日期是文本并且您需要对其进行转换,那么DATEVALUE
将执行此操作:
【讨论】:
以上是关于将日期转换为数字的公式[关闭]的主要内容,如果未能解决你的问题,请参考以下文章