タイマー
startTimerで、初期化を行い、1秒後にTimerを呼び出します。Timerでは、(2,2)のセルに1を加え、再度、タイマーを設定します。break
では更新の 中断/開始 を行います。stopTimerで停止します。各機能にボタンを割り付ければ1秒単位で更新するタイマーーが利用できます。
Private run As Boolean Private cont As Boolean Sub Timer() If cont = True Then Application.OnTime _ Now + TimeValue("00:00:01"), "Sheet1.Timer" Cells(2, 2) = Cells(2, 2) + 1 End If End Sub
Sub startTimer() Cells(2, 2) = 0 run = True cont = True Application.OnTime _ Now + TimeValue("00:00:03"), "Sheet1.Timer" End Sub Sub stopTimer() run = False cont = False End Sub Sub break() If cont = True Then cont = False Else cont = True Application.OnTime _ Now + TimeValue("00:00:03"), "Sheet1.Timer" End If End Sub
ボタンの作成
挿入メニューの「図」から「オートシェイプ」を選び、適当な位置にボタンとなる適当な図(何でかまいません)を配置します。必要なら、図の背景色と文字(挿入、削除)をいれます。これらの操作は、マクロとは無関係です。必要な操作は、図を右クリックしたとき現れるメニューで、「マクロの登録」を選択します。VBAエディタで編集した関数名が表示されますから、実行したい関数をクリックします。
注意
このタイマー機能は最初の呼び出し時にタイマーを設定するため、余分な時間がかかるようです。
OnTime
OnTime は指定した時刻に指定した関数を呼び出す機能で OnTime 時刻,関数 と指定します。す。現在時刻は Now で取得できますから、Now
+ TimeValue("00:00:01") で1秒後の指定になります。
時刻で呼び出したメソッドで、再度、OnTimeを指定すれば、定期的に呼び出すことができます。
ボタンの実行
実行モードでこの図形をクリックすると、登録したマクロ(メソッド:関数)を実行できます