カレンダー表

■ Excel豆知識9



 9-1 名前定義
 セルやセル範囲には、任意の名前をつけることが出来ます。
名前は、数式の計算範囲や、データの処理範囲を指定するときにも使用することができます。

「名前をつける」と、いろいろな場面で便利に使うことができますが、ここではそのごく一部
を紹介したいと思います。

[図00901]の青で囲ったI11セルに「消費税率」という名前をつけるには、I11セルを選択した
状態で左上の「名前ボックス」に「消費税率」と入力します。(この時、Enterキーは2回押し
て、下図のように名前ボックスの中央に「消費税率」と表示されるようにします。
セルに名前をつける
[図00901]


 同様にして[図00902]の緑で囲ったE11:E15セル範囲に「金額」と、橙で囲ったF11:F15セル
範囲に「消費税」と名前をつけます。
セル範囲に名前をつける
[図00902]


 その名前を計算式に利用することが出来ます。
名前を数式に利用
[説明00903]


名前ボックス
[説明00904]

 名前ボックスで「祝日」を選択すると、「祝日リスト」シートにある祝日の一覧表が選択され
ます。
(「祝日リスト」の設定の仕方は豆知識9ブックの「名前定義」シートをご覧ください。)
祝日リスト
[図00905]


 この選択された範囲が、[図00906]のカレンダー表の条件付き書式の条件2で使われている「祝日」です。
条件付き書式に名前を利用
[図00906]




 9-2 条件付き書式(関数・名前定義)
 カレンダー表で使用している条件付き書式の条件1条件3については豆知識7で、また、条件
2に使用している関数については豆知識8で、そして、それに使用している「祝日」という名前に
ついて9-1で簡単に説明いたしました。

では、今度はその関数名前がどのように条件2のなかに使われているのかについて説明してみよ
うと思います。

=OR(WEEKDAY($B4)=1,COUNTIF(祝日,$B4))

OR関数はカッコの中の引数のどれかひとつでも正しければTRUEを返すというものでした。
このOR関数の引数として、WEEKDAY($B4)=1COUNTIF(祝日,$B4)のふたつが設定されています。

WEEKDAY($B4)=1はB列のセルの値が「日曜日」のときにTRUEとなります。
WEEKDAY関数の戻り値
[図00907]

COUNTIFは=COUNTIF(範囲,検索条件ですので、
COUNTIF(祝日,$B4)「祝日」という範囲B列のセルの値1ある場合にTRUEを返します。
この部分はCOUNTIF(祝日,$B4)=1と書いても同じです。

ということで、=OR(WEEKDAY($B4)=1,COUNTIF(祝日,$B4)) という条件は
「B列のセルの値が『日曜日』」または「B列のセルの値が『祝日』」の時にTRUEを返すという
ことがおわかりいただけたと思います。


これでカレンダー表に使用している3つの条件の全部がそろいました。
条件1:その行のB列のセルの値の「月」がB4セルの「月」と違ったら、フォントを白にする。
条件2:その行のB列のセルの値が「日曜日」または「祝日」だったら、パターンをベージュにする。
条件3:その行のB列のセルの値が「土曜日」だったら、パターンを薄い黄色にする。

この3つの条件を、優先順位は1、2、3の順で適用する、という設定をしています。


  9-3 カレンダー表を完成させる
 カレンダー表に設定する条件付き書式が全部ご理解いただけたと思いますので、[図00908]
の表にそれを設定してみてください。
カレンダー表
[図00908]

やり方がまだよくわからない場合は下記の順にやってみてください。
(1) B4セルからF34セルまでの表全体を選択する。
(2)「書式」-「条件付き書式」で条件付き書式の設定のダイアログボックスを出す。
(3)「数式が」にして「=month(」と入力し、B4セルをクリック、F4キーを2回押して
   「=month($B4」とし、「)<>month(」と入力し、B4セルをクリック「」で閉じて
   「=month($B4)<>month($B$4)」とする。
(4)「書式」をクリックし、フォントを「白」にし、「OK」。
(5)「追加」をクリックし、「条件2」で「数式が」にして「=or(weekday(」と入力し、
    B4セルをクリック、F4キーを2回押して「=or(weekday($B4」とし、
  「)=1,countif(祝日, 」と入力し、B4セルをクリック、F4キーを2回押して「))」
    で閉じて、 「=or(weekday($B4)=1,countif(祝日,$B4))」とする。
(6)「書式」をクリックし、パターンを「ベージュ」にして「OK」。
(7)「追加」をクリックし、「条件3」で「数式が」にして、「=weekday( 」と入力し、
    B4セルをクリック、F4キーを2回押して「=weekday($B4」とし、「)=7」と入力し、
   「=weekday($B4)=7」とする。
(8)「書式」をクリックし、パターンを「薄い黄色」にして「OK」、「OK」。



これで[図00909]のようにカレンダー表が出来上がったと思います。
カレンダー表
[図00909]

 カレンダー表が出来上がったら、そのシートをコピーして、A1セルを5/1、6/1などと変えて
やれば、5月分、6月分のカレンダーがすぐに出来ます。


<シートをコピーする一番簡単な方法>
簡単なシートコピー方法
[説明00910]

ページTOPへ