月の日数を知る
ある年度の指定した月の日数が何日あるか求め、その日数分繰り返す処理をします。
日数の基本的考え方。
■ 大の月(1,3,5,7,8,10,12)=31
■ 小の月(4,6,9,11)=30
■ 閏年の2月=29
■ 閏年以外の2月=28
プログラムで表現
'引数の月の日数を返す Private Function nissuu(nenn As Integer, tuki As Integer) Dim tukisuu tukisuu = 0 Select Case tuki Case 1, 3, 5, 7, 8, 10, 12 tukisuu = 31 Case 4, 6, 9, 11 tukisuu = 30 Case 2 '4年に一度のうるう年なら29日 If nenn Mod 4 = 0 Then tukisuu = 29 Else tukisuu = 28 End If End Select nissuu = tukisuu End Function
上のコードは年度と月の数値を引数で受け取って、日数を返す関数ですね。
具体的な使い方は次の様にします。
カレンダーの数値部分
日数=nissuu(2023,8)
カレンダーの曜日部分
‘日付の合成
Dim hiduke As String
hiduke = nenn & “/” & tuki & “/” & r
‘曜日の設定
Dim youbi As String
youbi = Format(hiduke, “aaa”)
’ ”aaa” はhidukeに対応する曜日を返すFormat関数の定型句です
こんな感じでどうでしょう。
実際のコードではこのコードとは少し違う書き方をしています。(まだVBAの経験値が低かったのです)
ダウンロードしたらAlt + F11でVBAエディターを開いてみてください。
ダウンロード
下のカードからダウンロードしてください。
並べる日付
1 ファイル 28.87 KB
コメント