0

このように時刻の配列を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)

時間を hh mm ss に保存するにはどうすればよいですか。msms?

4

3 に答える 3

1

これを試して:

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

残念ながら、これはほんの数秒では機能しません。

于 2013-03-05T14:06:00.943 に答える
0

Timeserialは、時間、分、秒を時間に変換しますが、ミリ秒は処理しません。msが必要ない場合は、

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))

これらの値を調べることは機能しているように見えますが、ミリ秒を表示することができないため、それがどの程度優れているかわかりません。

于 2013-03-05T14:23:21.393 に答える
0

これを試してみてください、それは機能しますか?

Dim timeA() As Variant
timeA = Array("01:42:32.75", "02:26:34.22", "05:03:23.54")
于 2013-03-05T12:36:30.533 に答える