用HH:MM:SS理解Excel计算

时间:2016-02-14 04:51:37

标签: javascript excel math excel-formula modulus

我正在将一些Excel计算转换为Javascript。

我在excel中遇到了一个使用输入值计算值的计算,其格式为HH:MM:SS似乎没有意义。

首先,这是我试图理解的公式:

=MOD((Jataka!$C$60*24*2.5*5*30), 360)

在上面的公式中,Jataka!$C$60内的单元格的值为21:11:29,单元格的格式为自定义[h]:mm:ss

以下是excel计算的结果,如果细分为较小的步骤:

Jataka!$C$60 = 21:11:2924*2.5*5*30 = 9000

以来

(Jataka!$C$60*24*2.5*5*30)根据excel等于190723:29:53

如果您随后将包含190723:29:53计算结果的单元格的单元格格式更改为Number的单元格格式,则根据excel的190723:29:53的等效数字为{ {1}}。

如果您使用7946.81并使用7946.81的除数对其应用excel的MOD函数,则会得到360的计算值和最终值。

换句话说:26.81242183 = =MOD(7946.81, 360)

以上是以excel计算的内容。

我试图了解这个计算,这是我的思路......

我假设26.81242183表示:小时是21,分钟是11,秒是29。

因此我将小时分秒更改为十进制等值。 十进制21:11:29假设为21:11:29 然后我获得21.191388888888888并将21.19138888888888824*2.5*5*30乘以它。 9000 x 21.19138888888888824*2.5*5*30 = 9000

此时我注意到我对190722.5的计算与原始190722.5格式和hh:mm:ss等效格式的Excel计算不同。

在上面的Excel计算中,原始Number格式为hh:mm:ss。 如果您将190723:29:53转换为小数,则会获得190723:29:53

190723.49805555557与我们对190723.49805555557的计算不同。

根据excel,190722.5的数字等效格式为190723:29:53

7946.81也不同于7946.81的计算。

所以即使在这一点上,我们已经得到了不同的中间结果...... 这是什么原因???

excel如何将190722.5之类的值转换为21:11:29 ????

如果我通过做360的MOD继续我的计算,我得到 Number = =MOD(190722.5, 360)

但是在excel文件中,我的计算结果基于282.5,它基于: 26.81 = =MOD(7946.81, 360)

我在这里不理解什么? 我错过了什么步骤?

excel如何将26.81242183之类的值转换为21:11:29 ????

即使我首先将Number转换为Excel中的21:11:29,我也会获得Number的值。

我认为这些是解决这个问题的两个重要问题:

1。)什么公式可以用0.88乘以21:11:29

2。)以及excel如何将格式为HH:MM:SS的Number转换为21:11:29

1 个答案:

答案 0 :(得分:2)

  

因此我将小时分秒更改为十进制等值。十进制21:11:29假设是21.191388888888888

21:11:29TIME(21, 11, 29)不是21.191388888888888

在1899年12月31日之后的每一天,Excel中的日期 1 。今天恰好是42,413。时间被认为是一天的小数部分,所以今天中午是42,413.5,今天晚上8点是42,413.83333。

21:11:29(没有日期成分)的时间等于~0.882974537,而不是21.191388888888。如果将它乘以24(一天中的小时数)则为21.191388888888,因为您已将小时数(¹/ 24)转换为整数(1)。

希望这有助于使其易于理解。 tbh,我无法弄清楚你为什么乘以9000,也不知道你的最终目的是什么。