2013-03-05 26 views
0

我想在VBA中存儲時間數組,但是VBA拒絕。在VBA數組中存儲時間數組

Dim timeA() As Variant 
timeA = Array(01:42:32.75, 02:26:34.22, 05:03:23.54) 

相反,我必須將它作爲序列存儲,而不是像這樣。

Dim timeA() As Variant 
timeA = Array(0.0712123842592593, 0.101784953703704, 0.21068912037037) 

我能做些什麼來存儲時間以毫米爲單位。 MSMS?

回答

1

試試這個:

Dim timeA() As Variant 
timeA = Array(#01:42:32#, #02:26:34#, #05:03:23#) 

不幸的是這不會秒的分數工作。

0

試試這個,它工作嗎?

Dim timeA() As Variant 
timeA = Array("01:42:32.75", "02:26:34.22", "05:03:23.54") 
+0

不,它沒有工作,Belial09。感謝您的期待! – extensa5620 2013-03-05 15:03:27

0

Timeserial將小時,分鐘和秒轉換爲時間,但不處理毫秒。如果你不需要毫秒,你可以使用

Sub storetime() 

    Dim vaTime As Variant 
    Dim i As Long 

    vaTime = Array(TimeSerial(1, 42, 32.75), TimeSerial(2, 26, 34.22), TimeSerial(5, 3, 23.54)) 

    For i = LBound(vaTime) To UBound(vaTime) 
     Debug.Print Format(vaTime(i), "hh:mm:ss") 
    Next i 

End Sub 

您可加入MS像

vaTime = Array(TimeSerial(1, 42, 32) + (0.75/24/60/60), TimeSerial(2, 26, 34) + (0.22/24/60/60), TimeSerial(5, 3, 23) + (0.54/24/60/60)) 

檢查這些值好像它的工作原理,但我不能讓毫秒來顯示,所以我不確定你有什麼好處。

+0

嗯..這是一個想法。但我正在尋找一種快速方法,因爲我的朋友需要手動輸入時間。 – extensa5620 2013-03-05 15:04:14