我试图从日期/时间戳数据组合中提取时间戳到不同的列中,但我得到了随机数。我尝试过文本到列、向左和向右。然后,我特别粘贴了这些值,认为格式可能会弄乱我。没有。这些值仍然返回错误。对于文本到列,我用空格(例如:2024-04-16 01:19:20)来描述它,原始列维护日期,然后将时间戳归零(00:00:00)而不是删除它,同时将准确的时间戳放入新列中。对于 LEFT 和 RIGHT 函数,当我尝试隔离要传输的字符串时,会弹出看似随机的数字。即使当我执行 LEN 和 FIND 函数时,字符长度也可验证关闭,并且 FIND 函数返回不准确的位置。我唯一能想到的是输入的日期格式与电子表格上显示的格式略有不同,但特殊的粘贴并没有解决问题。
像
LEFT
、RIGHT
、LEN
和 FIND
这样的函数在这里不可靠的原因是 Excel 在底层将日期和时间戳视为序列号。 Excel 将日期和时间存储为数值,其中整数部分代表日期,小数部分代表时间。当您尝试使用基于字符串的函数(如 LEFT
和 RIGHT
)时,Excel 不会将日期/时间戳解释为文本,而是解释为数字,这就是为什么您会看到看起来随机的(但根本不是随机的) ) 结果。 例如:
要可靠地提取部分日期/时间戳,请使用 Excel 的日期和时间函数(例如,
YEAR
、MONTH
、DAY
、HOUR
、MINUTE
、SECOND
)。这些函数适用于日期的数字序列格式,旨在正确解释它,准确提取每个组成部分。例如:
=HOUR(A1)
将给出单元格 A1 中时间戳的小时数。
=MINUTE(A1)
和 =SECOND(A1)
将分别为您提供分钟和秒。
如果您需要时间戳部分(例如 01:19:20)作为文本字符串,请将其格式设置为
=TEXT(A1,"hh:mm:ss")
。这种方法使用 Excel 的日期系统来正确解释值,避免您在使用字符串操作函数时遇到的问题。