ユーザーフォームに時計をつけてみる



The following two tabs change content below.

taka

あることがキッカケでVBAを独学で勉強しました、今ではブログを通してVBAでできることを解説しつつ、VBAや他の言語の勉強、ブログ運営の勉強をしています(^^♪

ユーザーフォームに時計をつけてみる

今回はExcel VBAのユーザーフォーム上に時計を付けてみようと思います。あまり必要ないかもしれませんが暇つぶしにでもご覧ください。

作成イメージ

今回はこのように秒まで表示して動く時計を作成したいと思います。

 

時計を作成してみる

まず時計を作成するにあたり、今回用意するものは

  • UserForm
  • Label

この二つだけです。下記のコードをコピーしてももらえればすぐ使えます。

下で解説をしますので理屈を知りたい方引き続きご覧下さい。

 

コードの解説

まず時計は随時動いていなければいけません

ですのでUserForm上のイベントは【Activate】にしておかなければいけません。

 

続いて変数の宣言ですが、変数の宣言の型は【String】で宣言します【Variant】でも構いません。

ここからが処理のお話になります。

今回の処理は【Do …Loop】を使用して条件を指定します。指定する条件は【UserForms.Count > 0】UserForms.Countはフォームを開いている数を返します。なので今回は【1】を返してきます。

While は条件が正しい間繰り返す条件ですのでUserFormが一つでも開いている場合繰り返すという処理です。

データの書式を整える【Format関数】と現時点の時間を返す【Time関数】を使用して表示するデータを整形していきます。

Label1.Captionでラベルにデータを表示します。

DoEventsは処理の途中にOSに制御を移す関数です、この関数を使わない場合うまく処理できなくなってしまうので必ず使用してください。

ファイルやコードの利用、WEBサイトの利用について

サンプルコードなどは当サイトの免責事項をよくお読みになってからお使いください。

Sponsored Link

 

特別企画!IT企業の実情をIT企業の社長に聞いてみた!

独学者が多いVBAプログラマー「せっかくプログラム言語を覚えたし、IT企業に転職しようかな?でも、IT企業って良いイメージ聞かないし実際はどうなんだ?」という疑問にIT企業の社長に直に聞いてみました!!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です