Windowsが起動している時間を取得するWindowsAPI関数(GetTickCount)について紹介します。
構文
記述方法は以下の通りとなります。
(API定義)
Declare Function GetTickCount Lib "Kernel32" () As Long
---------------------------------
(VBA記述)
GetTickCount()
[説明]:
Windowsが起動している時間を取得するAPI関数はGetTickCount関数となります。VBAから呼び出して使用する場合には、
---------------------------------
Declare Function GetTickCount Lib "Kernel32" () As Long
---------------------------------
をプロシージャ外で宣言します。
GetTickCount関数はWindowsが起動してから経過した時間をミリ秒単位で取得します。
使い方
使用方法について説明します。
[プログラミング例]:
Declare Function GetTickCount Lib "Kernel32" () As Long
Sub サンプル()
'↓処理①
Dim 時間 As Long
'↓処理②
時間 = GetTickCount() / 1000
MsgBox Int(時間 / (60 * 60))
End Sub
処理の流れは以下の通りとなります。
[処理①]:変数定義
Windowsが起動している時間を格納する変数定義となります。
[処理②]:GetTickCountによるWindows起動時間を取得
WindowsAPI関数であるGetTickCountを使用したWindowsが起動している時間の取得になります。GetTickCountを使用するには後ろに「()」(カッコ)を付ける必要があるため、「GetTickCount()」と記述します。また、GetTickCountは経過時間をミリ秒単位で取得するため、秒単位に戻すには1,000で割り算をし、経過した時間を調べるためには3,600(秒・分の掛け算(60*60))で割り算をします。最後にInt関数を使用して取得した起動時間を整数値に変換してからMsgBoxで表示します。
[実行例]:
①<実行>ボタンをクリックします。
②結果は以下の通りとなります。Windowsが稼働している時間が4時間のため「4」がMsgBoxで表示されます。
[サンプル]:
上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。
WindowsAPIを使用したWindowsが起動している時間を取得する方法についての説明は以上です。
おわりに
今回はWindowsAPI関数によるWindowsが起動している時間を取得する方法について説明しました。是非参考にして下さい。