出勤簿を作ってみよう

Step 4 日付をセット

1年間の日付を入力します。
日付は、月の末日を計算しループで入力していきます。
初めに4月~12月、続いて1月~3月を入力していきます。

末日まで入力し、念の為、末日から31日までのセルはクリアします。


Homeに戻る > Excelでアプリケーションソフト3 > 出勤簿ソフト

実行画面

月に応じた日付がセットされているのがわかります。
出勤簿の日付をセットしたソフト


実行VBAコード

Option Explicit

'月の末日を計算
Private Function MonthLastDay(yy As Integer, mm As Integer) As Integer
    Dim i As Integer
    Dim tdate As Date
    
    tdate = Format(yy & "/" & mm & "/1", "yyyy/mm/dd")
    i = 28
    Do
        i = i + 1
    Loop Until Day(tdate + i - 1) = 1
    MonthLastDay = i - 1
End Function

'日付を表示
Private Sub ExDispDate()
    Dim i As Integer
    Dim j As Integer
    Dim nlast As Integer
    Dim lrow As Long
    Dim lcol As Long
    
    lcol = 2
    '4月~12月
    For i = 4 To 12
        lrow = 7
        '月の末日を計算
        nlast = MonthLastDay(Range("F7"), i)
        '日付をセット
        For j = 1 To nlast
            Sheets("原紙").Cells(lrow, lcol) = j
            lrow = lrow + 1
        Next
        '末日から31日までクリア
        For j = nlast + 1 To 31
            Sheets("原紙").Cells(lrow, lcol) = ""
            lrow = lrow + 1
        Next
        lcol = lcol + 2
    Next
    
    '1月~3月
    For i = 1 To 3
        lrow = 7
        nlast = MonthLastDay(Range("F7"), i)
        For j = 1 To nlast
            Sheets("原紙").Cells(lrow, lcol) = j
            lrow = lrow + 1
        Next
        For j = nlast + 1 To 31
            Sheets("原紙").Cells(lrow, lcol) = ""
            lrow = lrow + 1
        Next
        lcol = lcol + 2
    Next
    
End Sub


Homeに戻る > Excelでアプリケーションソフト3 > 出勤簿ソフト

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved