我有一张工作时间表,记录了给定时间段内我的所有工作时间。一个月总共大约有160个小时。我想要一个单元格来显示我还剩多少小时可以工作来实现我的目标(160 小时),但我真的不需要一个单元格来保存“160 小时”值。
但是,我确实有一个单元格,用于存储给定期间我工作的所有时间的结果。
我不能做的是在公式中指定我想要考虑的小时数减去总单元格。尽管将单元格格式设置为“数字>持续时间”,但我得到了奇怪的值。
假设我当前的小时单元格是
K2
,它的读数是96:58:00
。还显示Duration
。
为了简单起见,我会尝试检查一下还剩下多少 100 小时。
首先想到的是使用
time()
并指定 100 小时。因此,我在下一个 (L2
) 单元格中输入以下公式:
=time(100;0;0) - K2
(对我来说!)令人惊讶的是:
-92:58:00
所以很明显在
mod-24
函数中获得了 100%24=4
(time()
) 值。
事实上,如果我将其转换为小于 24 小时的值,我就会得到我所期望的结果:
=time(20;0;0) - K2
会做正确的数学计算
-76:58:00
我检查了一个
duration()
函数,但它通过单独查看其签名来完成完全不同的事情。没有什么比 timespan()
函数更好的了。 timevalue()
也不是我能弄清楚的,因为它将日期时间值转换为整数。
迄今为止唯一有效的方法似乎并不是超级优雅:
=(time(10;0;0)*10) - K2
导致
3:02:00
然后我想到了其他一些事情:
=timevalue("100:00:00") => 0.16666667
=timevalue("10:00:00")*10 => 1.66666667
替换公式中的这些数字根本没有帮助:
=0.16666667 - K2 => #ERROR!
=1.66666667 - K2 => #ERROR!
是否有正确的方法来在谷歌表格中指定这100小时的时间跨度/持续时间,或者我是否应该坚持乘法技巧?