続けるぜ! 誰得シリーズw
イメージ
こういう表を埋めることを考える
年はA1、月はC1セルに入っている
B3
ここは条件としては
- 1日が日曜日だったら1
- それ以外で空欄。
1日の曜日は
WEEKDAY(DATE($A$1,$C$1,1))
(1が日曜日7が土曜日)
なのであれがこうして
=IF(WEEKDAY(DATE($A$1,$C$1,1))=1,1,"")
C3~H3
ここは条件としては
- 1日が○曜日だったら1
- それ以外で空欄。
に加えて
- 左のセルが空欄じゃなかったら左のセル+1の値
なのでアレをこうして
C3セルに
=IF(B3<>"",B3 + 1,IF(WEEKDAY(DATE($A$1,$C$1,1))=2,1,""))
を入れてH3までコピーするとB3が自動的に変わると思うのでそれを修正する
D3~H3
=IF(C3<>"",C3 + 1,IF(WEEKDAY(DATE($A$1,$C$1,1))=3,1,"")) =IF(D3<>"",D3 + 1,IF(WEEKDAY(DATE($A$1,$C$1,1))=4,1,"")) =IF(E3<>"",E3 + 1,IF(WEEKDAY(DATE($A$1,$C$1,1))=5,1,"")) =IF(F3<>"",F3 + 1,IF(WEEKDAY(DATE($A$1,$C$1,1))=6,1,"")) =IF(G3<>"",G3 + 1,IF(WEEKDAY(DATE($A$1,$C$1,1))=7,1,""))
B4~H6
オレンジのセルは前の週の土曜日に+1
黄色のセルは左のセルに+1
の数式を入れる
B7~
最終日が入ってくる週。
まず、そこに入る数字はオレンジは前の週の土曜日に+1、黄色のセルは左のセルに+1
- DATE($A$1,$C$1,ここに入れる)で月が変わっていたら空欄
- 変わってなかったらその数字
加えて
- 前の値が空欄だったら空欄
って条件になるので
B7~H7
=IF(MONTH(DATE($A$1,$C$1,H6+1))<>$C$1,"",H6+1) =IF(B7="","",IF(MONTH(DATE($A$1,$C$1,B7+1))<>$C$1,"",B7+1)) =IF(C7="","",IF(MONTH(DATE($A$1,$C$1,C7+1))<>$C$1,"",C7+1)) =IF(D7="","",IF(MONTH(DATE($A$1,$C$1,D7+1))<>$C$1,"",D7+1)) =IF(E7="","",IF(MONTH(DATE($A$1,$C$1,E7+1))<>$C$1,"",E7+1)) =IF(F7="","",IF(MONTH(DATE($A$1,$C$1,F7+1))<>$C$1,"",F7+1)) =IF(G7="","",IF(MONTH(DATE($A$1,$C$1,G7+1))<>$C$1,"",G7+1))
B8~H8
=IF(H7="","",IF(MONTH(DATE($A$1,$C$1,H7+1))<>$C$1,"",H7+1)) =IF(B8="","",IF(MONTH(DATE($A$1,$C$1,B8+1))<>$C$1,"",B8+1)) =IF(C8="","",IF(MONTH(DATE($A$1,$C$1,C8+1))<>$C$1,"",C8+1)) =IF(D8="","",IF(MONTH(DATE($A$1,$C$1,D8+1))<>$C$1,"",D8+1)) =IF(E8="","",IF(MONTH(DATE($A$1,$C$1,E8+1))<>$C$1,"",E8+1)) =IF(F8="","",IF(MONTH(DATE($A$1,$C$1,F8+1))<>$C$1,"",F8+1)) =IF(G8="","",IF(MONTH(DATE($A$1,$C$1,G8+1))<>$C$1,"",G8+1))
C1を12に変えて、土日のフォントの色を変えて
祝日対応は別でリスト作るしか方法知らないんだよなぁ~