GetTickCount関数は、WindowsのAPIの一つで、システムの起動からの経過時間をミリ秒単位で返します。Windowsが起動されてから、最後にシステムの起動時間がリセットされた時点までの経過時間を返します。この関数を使用することで、システムの動作時間を取得することができます。
API宣言
VBAからGetTickCount関数を使用するためには、API宣言が必要です。API宣言は、WindowsのAPIをVBAで使用するために必要な宣言のことです。次のように宣言します。
この宣言では、GetTickCount関数を使用するために必要な「kernel32.dll」というWindowsのライブラリをロードし、GetTickCount関数の宣言を行っています。また、関数が返す型はLong型となります。
使い方
GetTickCount関数を使用するには、次のように関数を呼び出します。
tickCount = GetTickCount()
このようにすることで、tickCount変数にシステムの起動からの経過時間をミリ秒単位で返すことができます。
プログラミング例
次の例では、GetTickCount関数を使用して、VBAプログラムが実行された時間を取得します。
Private Declare Function GetTickCount Lib "kernel32" () As Long
Sub GetProgramElapsedTime()
Dim start_time As Long
Dim elapsed_time As Long
start_time = GetTickCount()
' ここにプログラムの処理を書く
elapsed_time = GetTickCount() - start_time
MsgBox "プログラムの実行時間:" & elapsed_time & "ミリ秒"
End Sub
このプログラムでは、GetTickCount関数を使用して、プログラムの開始時刻を取得しています。その後、プログラムの処理を行い、処理が終了した時刻から開始時刻を引くことで、プログラムの実行時間を計算しています。最後に計算結果をMsgBoxで表示しています。
まとめ
GetTickCount関数は、WindowsのAPIの一つで、システムの起動からの経過時間をミリ秒単位で返します。また、システムの起動からの経過時間を取得するための非常に便利な関数です。