プロフィール

フォトアルバム

ホリー

ザスパのホーム戦では,ゴール裏で叫んでいます。 本職は,小学校の教員。 中学校の免許教科は理科です。 リンゴマークのついたものが大好きです。

フォトアルバム

 

Horryのリンク

最近読んだ本

« Excelで遊んでます | メイン | Excelで遊んでます4 »

2006-02-16

Excelで遊んでます3

 行事予定表の土日に網掛けをすることができるようになりました。でも,祝日はまだですね。ここだけ手入力というのは情けない。というわけで,今回は祝日を自動入力する関数(なんていえるほどモノもではないが)です。

 祝日は,「国民の祝日に関する法律(祝日法)」によって定められています。Horryが子どもの頃は移動する祝日は春分の日と秋分の日だけでした。しかし,ハッピーマンデーのおかげで,移動する祝日が増えてしまいました。今回は,これが問題になります。移動しない祝日は,テキストを入れて,セルに網掛けしておけばいいのです。これは簡単。でも,移動してしまう休日はどうすればいいのでしょうか。そのHorry流解決方法。

 例えば「成人の日」は,「1月の第2月曜日」と定められています。だから,第2月曜をさがして,その右隣のセルに「成人の日」とテキストを表示し,セルに網掛けをすればいいのです。

 第2月曜の見つけ方は,単純な方法をとりました。第2月曜というのは,8日から14日までの間にだけ出現します。この期間の曜日のセルの値が2(月曜を表す)だったら,行事予定のセルに「成人の日」と入力すればいいのです。ですから,8日のセル(Y12)に =IF(X12=2,"成人の日","") と入力しました。これを14日までコピーすればOKです。

 セルの網掛けは,条件付き書式を使います。条件付き書式で指定できる第3の条件に,「セルの値が」「成人の日」のとき「網掛けする」ようにすればいいのです。

 こうして,ハッピーマンデーには対応できました。ところが,この方法には大きな欠点があります。例えば,来年の成人の日は8日ですが,9日に「始業式」と入力してしまうと,そのセルの関数が消えてしまうのです。来年度以降,このブックを修正して使おうとすると,文字を入力したセルの関数は消えてしまっているのです。やはり関数だけでは無理があるようですね。

 さらに,移動しない祝日が日曜日になった場合に,月曜日が休みになる処理も必要ですね。移動しない祝日の次の日のセルにも,ちょっとした細工が必要ですね。

 2009年の9月には,敬老の日が21日(月),秋分の日が23日(水)となる予定です。そうすると,祝日にはさまれた日は休日になるという規程があるので,22日(火)も休日になります。ここの処理が難しい!こうなったらVBAを使わなくてはできないでしょうね。

 次回は,勝手気ままに?移動する祝日「春分の日」「秋分の日」の処理について書こうと思います。

コメント

コメントを投稿


-天気予報コム-