我正在将一些Excel计算转换为Javascript。使用HH:MM进行Excel计算:SS:
我在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:29
和24*2.5*5*30
= 9000
(Jataka!$C$60*24*2.5*5*30)
根据Excel中,根据到Excel数等效的190723:29:53
等于190723:29:53
如果随后使保持着的190723:29:53
计算的Number
信元格式的结果的单元格的单元格格是。
如果你拿并将excel的MOD函数应用于它,除数为360
,则得到26.81242183
的计算值和最终值。
换句话说:=MOD(7946.81, 360)
= 26.81242183
以上是什么在Excel中计算。
我试图让我的头围绕这个计算,这里是我的思路.....
我假设21:11:29
意味着:小时是21分钟是11,秒是29。
因此,我将小时分秒改为十进制等值。 21:11:29
十进制假设为21.191388888888888
然后我得到21.191388888888888
并将24*2.5*5*30
或9000
乘以它。 21.191388888888888
x 24*2.5*5*30
或9000
= 190722.5
。
在这一点上我注意到我的190722.5
的计算与原始hh:mm:ss
格式和Number
等效格式的Excel计算不同。
在上面的excel计算中,原始hh:mm:ss
格式为190723:29:53
。 如果转换190723:29:53
为十进制你190723.49805555557
190723.49805555557
是从我们的190722.5
计算不同。
根据excel的数字等效格式190723:29:53
是。
也是从190722.5
出计算不同。
因此,即使在这一点上,我们已经得到不同的中间结果.... ,这是什么原因???
如何Excel的转换像21:11:29
为Number
值????
如果我继续我的计算做360的MOD我得到 =MOD(190722.5, 360)
= 282.5
。
不过是一种基于26.81
上: =MOD(7946.81, 360)
= 26.81242183
什么我不理解吗? 我错过了什么步骤?
如何Excel的转换像21:11:29
为Number
值????
即使我首先将21:11:29
转换为excel中的Number
,我得到的值为0.88
。
我相信这是解决这个问题的两个重要问题:
1)不使用Excel公式什么用Number
乘21:11:29
?
2.)以及excel如何将格式为HH:MM:SS的值转换为21:11:29
到Number
?
嗨,你有一个Javascript函数的代码片段,它返回一个Excel日期和时间的日期编号吗?我在哪里可以找到它?谢谢... – preston
要处理Javascript时间作为原始数据与Excel日期和时间,您将需要转换。 Javascript时间更接近POSIX时间。有关转换因子的解释,请参阅[将Unix时间戳转换为dd/mm/yyyy hh:mm:ss](http://stackoverflow.com/questions/33773149#33773295)。 Javascript的附录是在评论中。 – Jeeped