Excelを使って、クラブの部室カギ当番表を作ってみようかという試みです。
- 曜日によってカギ当番は決まっている
- 月~水は、3名が固定で頑張っている
- 木・金は、何人かで相談して前月に決めている
- 月によって曜日位置が異なり、書き直すのが面倒なので、エクセルを使って年・月を入力すれば曜日を自動的に書き直すのはできた
- 年月を入力したら当番の名前も自動的に書き換えたい
というような条件です。
日付は「シリアル」で考える
人間の目に自然に見える年月日より「シリアル値」の方がPCにはラクチンです。
ということで、試しに作ってみたのをスクリーン・プリントしたのが下の画像です。少し、説明を書き加えました。
- 年はB1、月はD5に入力すれば、とりあえず前月のデータで表示が変化するです。
- vlookup関数を使って当番表を完成する(今回は、単にLOOKUPでも大丈夫かと…)
- 「週次×10+曜数」は、第X週のY曜日、というのを表しています。日曜が1で、第1週の日曜日は「11」
- N列とO列がVLOOKUPから参照するデータです。ここに、前月と異なる当番を修正したら、F列に表示される本番データ(カギ当番)も自動的に変化する…
- F列に直接名前を入力しないようロックをかけといた方が安全ですね
週次を求める
その日が、その月の第何週かというのを求めるのは、簡単な式でできます。いくつか考えられますが、爺は次のようなことにしました。
- セルi4の場合は、INT((DAY(H4)+6)/7)。なお「INT」は小数点を切り捨てる関数です。H4のシリアル値から「日」を取り出し、それに6を加えたのち7で割る。そのうちの整数部分だけ答えで返しなさい、というようなことかと…。
- 1か月の週次と曜日の関係は、11~17、21~27、などという具合にして第X週第Y曜日を表現することができます。
曜日を自動的に書き直す方法もイロイロあります。ネット上を探してみてくださいね~。