![格式化文本中的时间差](https://linux22.com/image/1358960/%E6%A0%BC%E5%BC%8F%E5%8C%96%E6%96%87%E6%9C%AC%E4%B8%AD%E7%9A%84%E6%97%B6%E9%97%B4%E5%B7%AE.png)
我如何才能从格式为“9-10:30”的单元格中找出时差。从该单元格中找出“1.5”小时或“90”分钟的公式是什么。
答案1
如果可能的话,我建议您将两个时间值放在不同的单元格中,例如 A2 中的 09:00 和 B2 中的 10:30,然后在 C2 中使用此公式
=(B2-A2)*24
将 C2 格式化为数字以显示 1.5
要得到 90,请将公式中的 24 替换为 1440
如果您无法拆分数据但可以使其保持一致,如 09:00-10:30 或 15:30-19:15(时间始终显示为 5 个字符,包括“:”),那么您可以使用此公式
=(RIGHT(B2,5)-LEFT(B2,5))*24
答案2
假设这个值在A1
:
=TEXT((RIGHT(A1, LEN(A1) - FIND("-",A1))&IF(COUNTIF(A1,"*-*:*")>0,"",":00"))
- (LEFT(A1, FIND("-",A1) - 1)&IF(COUNTIF(A1,"*:*-*")>0,"",":00"))
,"hh:mm")
大多数时候都正确:
right(A1, len(A1) - instr(A1, "-"))
:00
如果需要,请添加:IF(COUNTIF(A1,"*-*:*")>0,"",":00")
最常被留在左边:
left(A1, instr(A1, "-") - 1)
:00
如果需要,请添加:IF(COUNTIF(A1,"*:*-*")>0,"",":00")
将小时数字格式化为小时和分钟:
text(..., "hh:mm")