VBAって、本当におもしろい!!
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub ListBox1_Click()
DoEvents
Sleep 500
ActiveCell.Value = ListBox1.Value
Unload Me
End Sub
※最初のステートメントは、フォームモジュールの宣言セクションに記述してください。
「ちょっと難しいけど、Sleep関数を使うと、コードの進行をミリ秒単位で中断することができるんだ。
このSleep関数はWindows APIが提供している関数の1つなんだけど…。
難しいことはいいから、宣言セクションに
"Private Declare Sub Sleep 〜"
と宣言を記述すれば、Sleep関数が使えるようになる。
引数に、中断する時間をミリ秒単位で記述すると、その間コードの実行が中断される。
ここでは"500"ミリ秒だから…0.5秒、中断されるよ」
星くんは先ほど同様に、ユーザーフォームを操作しました。
「あ…!ホントだ。
さっきは一瞬で消えてたけど、今度はほんの少し、表示時間が長くなってる…。
これってミリ秒の"500"は、自由に変更できるんだよね?」
「もちろん。
…ユーザーが望む長さに設定してもいいし、スクロールバーコントロールなんかで、
自由に調整できるようにしてもおもしろいね」
星くんの顔が、パッと輝きます。
「VBAって、本当におもしろいな!八木!!」
「ははは、何をいまさら…。
でもこういったところまで、気を配ったシステムこそ、ユーザーフレンドリーなシステムなんだ。
市販のソフトウェアでは、かゆいところに手が届かなくても、VBAならトコトン作りこみできる。
だから、みんなVBAが好きなんだよ」
星くんは八木くんの話を聞きながら、忘れかけていた熱いものが、
胸の奥にこみあげてくるのを感じていました。
















































