私は仕事でエクセルを使いVBAマクロをよくプログラミングするが、一定時間ごとに処理したいときなどがよくある。 処理した後でApplication.OnTimeを使えば可能であるのだが、その度に一瞬砂時計になったり、ファイルを閉じてもまた起動したり、と、あまり私は好きではない。 ところが、この前Win32のSetTimer関数を利用してマクロの関数を呼び出すことができることを知り、試しにプログラミングしてみた。 (標準モジュール) Public Declare Function SetTimer Lib "USER32" _ (ByVal hwnd As Long, ByVal nIDEvent As Long, _ ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long Public Declare Function KillTi