VBAで~ 第3回 うるう年

第3回の資料

2回目が、3月17日
3回目が、4月7日だったので、間が3週間もありました。

第3回の資料も事前にいただいたので、

(画像をクリックすると拡大表示します)


4月7日までに、いちよう、全部やってみました。
ただ、最後の方は難しくて、
4月7日前日にやっと打ち込んだ状態でした。
でも、3回目、4月7日は、
最後の方、【チャレンジ・補足】条件分岐の別の方法 
までは、やりませんでした。
資料 13ページ中、8ページまでしか進まなかったので、
こんな状態だと、カレンダー自動作成まではいかないかも。

 

 

VBA で、うるう年を判定する。

3回目、4月7日から1週間経って、
やっと、復習を始めてます。

 

うるう年判定のIF 構文


資料に書いてあることを読んでいても、
ちんぷんかんぷん。
つまり、↓ サイトから引用したことが書いてあって、、、

閏年(うるう年)の計算方法
https://blog2.k05.biz/2012/02/00549.html 

 

400で割り切れるときはうるう年 

資料の次のページに、
400で割り切れるときはうるう年 というのを、
VBAの、IF 構文で、
   year Mod 400 = 0 
を使って作ってみようと書いてありました。
これは、わかりやすかったです。

Sub uruu()
  Dim year
  year = Cells(1, 1).Value
  If year Mod 400 = 0 Then
    Cells(1, 3).Value = “うるう年です。”
  Else
    Cells(1, 3).Value = “うるう年ではありません。”
  End If
End Sub

 

4で割り切れて、かつ
100で割り切れないときはうるう年

400で割り切れるときはうるう年、プラス、
  4で割り切れて、かつ 
  100で割り切れないときはうるう年 
という条件を入れます。

If year Mod 400 = 0 Then
のところに書き足すのですが、
If (year Mod 400 = 0) Or (year Mod 4 = 0) And ( year Mod 100 <> 0) Then
と打ち込みます。

私は、改行を入れて打ち込んでみました。
If (year Mod 400 = 0) Or (year Mod 4 = 0) And ( _ 
year Mod 100 <> 0) Then 
( のあとに、スペース アンダーバー を打ち込んで、
エンターキーで、改行できます。

4月7日にやったのは、ここまででした。
資料には、↓ のことも書いてあります。

 

 

うるう年です。→ 2024年はうるう年です。
と表示させるには?


Cells(1, 3).Value = “うるう年です。” のところを、
Cells(1, 3).Value = year & 年はうるう年です。”
と書き足します。


 

このあと、資料には、
【チャレンジ・補足】条件分岐の別の方法 
Select Case 構文 の課題ものっています。
これについては、次回 書きます。

 

 

サイトマップ