在 Excel 中将文本值转换为时间值

在 Excel 中将文本值转换为时间值

我正在尝试将文本转换为时间。基本上,我复制并粘贴了员工的总时间,但它粘贴为文本值,然后为了添加时间,我必须将其转换为时间,并且我必须在每个单元格中按 F2(很多员工需要很多单元格),这确实增加了获取工资单的时间。您知道我可以使用什么功能来更快地将文本值转换为时间值吗?

答案1

当您将外部来源的数据(例如网页就很可怕)粘贴到工作表中,并且数字、日期和/或时间以文本表示形式而不是真实数字、日期和/或时间出现时,通常最快的方法是选择列并选择数据 ► 文本到列 ► 固定宽度 ► 完成。这会强制 Excel 重新评估文本值,并将伪数字恢复为其真实数值。

如果将公式粘贴到文本或自定义格式的单元格中时出现这种情况,请先将列设置为一般的格式,然后使用 Ctrl+H 查找内容:= 并替换为:=,Excel 将再次重新评估每个单元格的内容,用运算公式替换看起来像公式的文本。

一个值得注意的特殊情况是网页中常见的不间断空格字符(ASCII 160 或 0×A0)的使用,这样日期时间的表格单元格就不会换行到第二行。如果您发现一个无法消除的空格,请使用 Ctrl+H 将不间断空格替换为常规空格(或什么都不用)。在键盘上,按住其中一个键的同时Alt点击数字键盘上的 0·1·6·0(Num Lock 处于开启状态),然后松开该Alt键,即可生成不间断空格。

答案2

如果你有一个文本值8:00,例如,单元格J42,那么输入

=TIMEVALUE(J42)

进入单元格K42,您将获得 8 小时的 Excel 日期/时间值。0.33333333默认情况下,它将显示为(因为 8 小时是一天的 ⅓),但您可以将其格式化为显示为时间值。并且,根据您的需要,您可能希望复制列K并粘贴值到列上J,这样您就可以摆脱文本值并仅保留日期/时间值。

TIMEVALUE()不处理负值。如果您的数据可能包含负时间,例如-8:00(可能是因为您对之前输入的数据进行了时间表更正或其他调整),您需要一个公式来处理-明确地:

=IF(LEFT(J42,1)="-", -TIMEVALUE(RIGHT(J42,LEN(J42)-1)), TIMEVALUE(J42))

答案3

11:42:47.294可以使用这个公式:

=TIME(MID(B13,SEARCH(":",B13,1)-2,2),MID(B13,SEARCH(":",B13,6)-2,2),MID(B13,SEARCH(":",B13,6)+1,6))

答案4

除了上述操作,尝试突出显示整个列。然后单击“文本到列”。听起来很奇怪,我知道。然后单击“完成”。它会神奇地将时间或日期转换为正常时间或日期……而不是文本。

相关内容