Excel VBA 今の時間を判断して処理を変える

午前か、午後か、など「今が何時だったら・・・」と、時間によって処理を変えるサンプルを記録します。

下図は、Excel2016です。

ExcelVBA時間判定

 

< スポンサーリンク >

 

方法

PCのシステム時刻が
9時以上12時未満だったら、A1に現時刻、B1に「午前の勤務」、
12時以上13時未満だったら、A1に現時刻、B1に「お昼休み」、
13時以上17時未満だったら、A1に現時刻、B1に「午後の勤務」、
その他は、A1に現時刻、「勤務外」
と入力されるようにしてみます。

Sub test()
    '今の時刻用変数
    Dim jikan As Date
    'B1入力用
    Dim str As String

    '変数にシステム時刻を代入
    jikan = Time

    '9:00~12:00
    If jikan >= "9:00" And jikan < "12:00" Then
        str = "午前の勤務"
    '12:00~13:00
    ElseIf jikan >= "12:00" And jikan < "13:00" Then
        str = "お昼休み"
    '13:00~17:00
    ElseIf jikan >= "13:00" And jikan < "17:00" Then
        str = "午後の勤務"
    'その他
    Else
        str = "勤務外"
    End If

    'A1に入力
    ActiveSheet.Range("A1").Value = jikan
    'B1に入力
    ActiveSheet.Range("B1").Value = str
End Sub

ExcelVBA時間判定

 

10:44の時点で実行すると下図のようになります。

ExcelVBA時間判定

 

15:39の時点で実行すると下図のようになります。

ExcelVBA時間判定

 

< スポンサーリンク >



サブコンテンツ

このページの先頭へ