2009-04-23 67 views
0

我试图通过的总和除以整数的总和除以整数[H]:MM:SS获得[S]。我在我看来这是疯狂的扭曲。使用VBA(EXCEL)时间

temp = Split(Format(Range("D" & rInx).Value, "hh:mm:ss"), ":", -1, vbTextCompare) 
answerDelay = CInt(temp(0)) * 3600 + CInt(temp(1)) * 60 + CInt(temp(2)) 

因为这似乎很奇怪,我我想我应该把它放在那里为你的大脑来看看,并告诉我这样做的更好的方法。

这是在短工作表中的公式的末尾将是

range(B1)=838 
range(C1)=26:38:44 
range(D1)=range(C1)/range(B1) 

此答案为109秒。

它的工作,因为我在这里有它,我只是我不satified我的解决方案。

你有更好的解决方案吗?

提前致谢! 克雷格

回答

0

您可以使用一个时间跨度的时间转换成秒,事后devide它。

我没有带在C#中测试,但财产以后这样的:

var seconds = new TimeSpan(26, 38, 44).Seconds; 

那是你的意思?

+0

不是,但我当然感谢您的及时响应,我使用VBA而不是C++ – CABecker 2009-04-23 18:47:34

+0

VBA有一个DateDiff函数,但没有相当于TimeSpan存在于C#中 – Lunatik 2009-04-24 07:25:37

3

Excel中保持次为一天的级分,即24小时= 1.0。要转换为秒,只需乘以24 * 60 * 60。