教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA プログラミング】(関数11)Now関数のプログラミング例を教えて!

f:id:m_kbou:20200529092145p:plain

Now関数を使用したプログラミング例を紹介します。

 

 

例題

<実行>ボタンをクリックした場合、現在の時刻が0時~9時台であれば「おはようございます、○○さん。」を、10時~16時台であれば「こんにちわ、○○さん。」を、17時~23時台であれば「こんばんわ、○○さん。」をA2セルに表示します。

[実行前]:

f:id:m_kbou:20200529092221p:plain

[実行後]:

①<実行>ボタンをクリックした時点の時刻が0時~9時台の場合

f:id:m_kbou:20200529092248p:plain

②<実行>ボタンをクリックした時点の時刻が10時~16時台の場合

f:id:m_kbou:20200529092301p:plain

③<実行>ボタンをクリックした時点の時刻が17時~23時台の場合

f:id:m_kbou:20200529092319p:plain

 

プログラミング

プログラミングは以下の通りとなります。

[記述例]:

Sub サンプル()

  Select Case Format(Now, "h")
    '↓処理①
    Case Is < 10
      Range("A2") = "おはようございます、○○さん。"
    '↓処理②
    Case Is < 17
      Range("A2") = "こんにちわ、○○さん。"
    '↓処理③
    Case Else
      Range("A2") = "こんばんわ、○○さん。"
  End Select

End Sub

Format関数Now関数を使用して現在の時刻を抽出し、抽出した時刻をSelect文を使用して以下内容で判定します。

処理①:抽出した時刻が10未満(0時台~9時台)の場合
 「おはようございます、○○さん。」をA2セルに表示して下さい。

処理②:抽出した時刻が17未満(10時台~16時台)の場合
 「こんにちわ、○○さん。」をA2セルに表示して下さい。

処理③:上記以外(17時台~23時台)の場合
 「こんばんわ、○○さん。」をA2セルに表示して下さい。

との内容になります。

f:id:m_kbou:20210213072942p:plain

※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。また、ボタンにプログラムを割り当てるにはこちらを参考にして下さい。

 

ダンロード

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com