速度比較のコードを書いたら、試すのが面白くなってきました。
VBAのDate関数とNow関数の比較。
Public StartTime As Double
Public EndTime As Double
Sub TimerStart()
StartTime = Timer
End Sub
Sub TimerStop()
EndTime = Timer
MsgBox (EndTime - StartTime & " 秒")
End Sub
Sub Sample01()
Call TimerStart '---- 測定開始
For i = 1 To 1000000
buf = Date 'yyyy/mm/dd
Next i
Call TimerStop '---- 約0.9秒
End Sub
Sub Sample02()
Call TimerStart '---- 測定開始
For i = 1 To 1000000
buf = Now 'yyyy/mm/dd hh:mm:ss
Next i
Call TimerStop '---- 約0.7秒
End Sub
Sub Sample03()
Call TimerStart '---- 測定開始
For i = 1 To 1000000
buf = Left$(Now, 10) 'yyyy/mm/dd
Next i
Call TimerStop '---- 約2.8秒_| ̄|○
End Sub
100万回実行させて、
・Date -> 約0.9秒
・Now -> 約0.7秒
でNowの勝ち。て言うかどちらも一瞬ですねw。
もしかしたらLeft$(Now, 10)でDate()より速くなる?と思って試してみましたが、そうは問屋が卸しませんでした。
0 件のコメント:
コメントを投稿