VBAでの処理時間の計測
2021年02月17日
会社で作っているCSV出力ツールで、
応答性を試験するために、マクロの処理時間を計測したい。
考え方としては、処理開始した時刻を変数にセットして、
処理完了時の時刻と比較する。
ただ、Nowを使うと結果が日付型で出力されて使いにくいので
Timerを使うのがお勧め。
応答性を試験するために、マクロの処理時間を計測したい。
考え方としては、処理開始した時刻を変数にセットして、
処理完了時の時刻と比較する。
ただ、Nowを使うと結果が日付型で出力されて使いにくいので
Timerを使うのがお勧め。
Timerは、経過秒数を表示するので、そのまま表示できるのがうれしい。
各ファイルに対する処理時間と全体処理時間を表示するには
こんな感じで書いたらOK。
Dim TicToc1 as Double:TicToc1 = Timer
Dim TicToc2 as Double
Dim FSO As Object:Set FSO = CreateObject("Scripting.FileSystemObject")
ループ変数を定義してループ
dim f As Variant
For Each f In FSO.GetFolder(フォルダ名).Files
TIctoc2 = Timer
Call 各ファイルでの処理(f.name)
Debug.Print f.nmae ; format(Timer - Tictoc2 , "0.0秒")
Next f
Set FSO = Nothing
Debug.Print 全体処理時間 ; format(Timer - Tictoc1 , "0.0秒")
PR
Comment