在表格应用中将小数转换为持续时间

在表格应用中将小数转换为持续时间

如何将十进制值转换为持续时间,例如:

569,3569:18:00

输出应该是可接受的持续时间,而不是像 CONCATENATE(569;":";18;":";"00")

表格应用程序(可以是 Microsoft Excel、Google Sheets 或 Libre Office Calc,但最好是 Google Sheets)应读取为累计时间(经过的时间或持续时间),以便之后制作更多公式。

我已经尝试过的方法:使用TIME()但结果将被锁定为 24 小时

答案1

尝试这个公式:

=LEFT(A1,FIND(".",A1)-1)&":"&TEXT(NUMBERVALUE(("0."&RIGHT(A1,LEN(A1)-FIND(".",A1))))/24,"mm:ss")

在此处输入图片描述

答案2

Lee的公式将生成一个文本字符串,当 Excel 意识到您希望时,它会将其广泛地视为数字。

您提到没有“掩码”连接,并给出了一个不可接受的例子。我要指出的是,您给出的示例将与Lee公式的结果相同,我的实验可以证明这一点。因此,如果他的公式是 A-OK,那么您的基本连接也应该是 A-OK。(当然,将值拆分以构建它会变得更加复杂,因此最终公式可能比更复杂Lee。)

但是,在 Excel 有充分理由相信您希望“按原样”使用它(作为字符串)的情况下,大多数情况下 Excel 都会这样做。例如各种类型的查找和“这是否相等”比较。

如果您执行标准的“强制转换”,例如将+0或添加*1Lee的公式中,您将得到不理想的结果。但是,如果您只是将他的公式括在一对括号 ( ()) 中,然后执行强制转换,它就会变成一个实数。

这似乎并不重要,至少现在无论你需要满足什么用途,但这可能很有趣,因为你知道你没有在身后留下潜在的陷阱。不管你是否在身后,陷阱似乎总是最终出现在你面前。

因此,用()并强制转换后,Excel 会立即使其成为一个真正的男孩数字。

但如果这对您来说很重要,JohnSUN那么评论的公式可以简单直接地解决这一问题。

如果您在提出问题之前没有想象到它,而是发现它是一个字符串,但是 Excel 可以并且将使用它作为数字,那么TEXT()使用他的格式字符串将其答案包装在函数中也可以简单直接地完成任务。

相关内容