Comments
Description
Transcript
第8 カレンダーを作る 1 上図のようなカレンダーを作成しましょう。 日曜日
第8 1 カレンダーを作る 上図のようなカレンダーを作成しましょう。 日曜日から土曜日まで「日、月、火、水、木、金、土」で、7列が必要です。そして、 見栄えの関係で左に1列とりますと、8列が必要列数です。 そして、月には「大の月」と「小の月」があり、大の月は31日ですので、図のように 木曜日からその月が始まりますと、31日は5行目まで収まります。しかし、月の始まり が金曜日になりますと、31日は6行目にずれ込みます。 よって、行はタイトル月の表示行と曜日の記入行を含めて8行を予定します。 2 基本的な様式の設定 ① セル「B1」に月を「1」と入力。 ② 「B2」に、日曜日を「日」と入力。 「 B2『 日 』」 セ ル の 右 下 隅 を「H2」まで右にドラッグする。 と、 「B2」をドラッグしていった「C2」 「D2」………「H2」に、 「月」 「火」………「土 とを表示されましたか。 そして、中央揃えアイコンをクリック。 ③ 「H1」に、年を「2005」と入力。 上の完成品のカレンダーは、2004年のカレンダーです。 しかし、ここではこれを参考にして2005年のカレンダーを作りましょう。 3 日付の入力 2005年1月1日は土曜日ですので、「H3」に「1」と入力。 次に、「B4」に「2」と「C4」に「3」入力。「H4」までドラッグ。これにより8日まで 入力。 と、順々に31日まで入力していく方法もありますが、この方法ですと、2月、3月… ……12月と12ヶ月入力するのは、大変な作業になります。 そこで、これを簡便にする方法を考えましょう。 関数を使うことにより、この作業を行うことが出来ます。 使用する関数は、取りあえずDATE関数とWEEKDAY関数。 先ず、このシートの1日に年と月を付け、このシ-トが何年何月のカレンダーかを明ら かにします。 「土」の右のセル「I2」に、[= DATE(H1,B1,1)]と入力します。 【Enter】で確定しますと、「I2」セルは「2005/1/1」と表示されましたか? DATE 関数とは。 「= DATE(年,月,日)」と式を書き、( )内に年,月,日の 順に指定して、日付を表示する。 ( )内に入力する年,月,日は、直接数値を入力してもよいし、 また、セルを指定してそのセル内の数値を指定することも出来る。 ここでは、年と月についてはセル内の数値を指定し、日は“1”と 直接入力している。 年と月をセルで指定した意味が分かりますか。 4 「B3」セルは何年何月何日か? 2005年1月1日は「土曜日」です。 カレンダーを作るには、H3 セルに「1」が簡易に入力されねばなりません。 そのためには、ここで私たちは、「B3」に何日が表示されるかを考えなければなりませ ん。===ここが肝心です。=== 12/31 は金、12/30 は木、12/29 は水、12/28 は火、12/27 は月、12/26 は日。 すると、「B3」には、2005年の前年(2004年)の「2004/12/26」が入力されねばな りません。ここで、WEEKDAY 関数の登場です。 WEEKDAY 関数とは。 WEEKDAY 関数は、指定した日付の曜日を求める関数です。 曜日は、日曜日が 1 月曜日が 2 火曜日が 3 水曜日が 4 木曜日が 5 金曜日が 6 土曜日が 7 と数字で表されます。 「I2」セルの「2005/1/1」は土曜日ですから、このセルに WEEKDAY 関数を使いますと、 答は「7」となるはずです。 「J2」セルに念のため、計算してみましょう。 「= WEEKDAY(I2)」と入力。 「7」と表示されましたか? さて、日曜日「B3」は、土曜日「H3」の6日前ですね。 2005 年 1 月 1 日の6日前が日曜日。(………いやに念を入れますね………) 2005 年 1 月 1 日は「I2」セルに入力されていますから、「I2 - 6」の日付が日曜日です。 これを式にして、「I3」に入力します。 しかし、「= I2 - WEEKDAY(I2)」としますと、1月1日の7日前の日付指定になって しまいます。 6日前の指定ですから、 この式は、「= I2 -(WEEKDAY(I2)-1)」。 そこで、「I3」の式をこれに訂正して、【Enter】で確 定。「I3」は、「2004/12/26」となりましたか? 5 日付の入力 「B3」セルに「= I3」と入力。 「B3」は、「2004/12/26」と表示。 続けて、「C3」に「= B3 +1」と入力します。 【Enter】で、「2004/12/27」と表示。 「2004/12/27」と表示された「C3」セルの右下隅を土曜日の「H3」までドラッグ。 ドラッグはコピー機能ですから、式をコピーして「H3」は、「2005/1/1」と表示されてい ますか? 「D3」「E3」「F3」「G3」が「#######」で確認できない。 では、列名を表示しているバーの[D]と[E]の境界線にマウスを持って行って、ダブ ルクリックしてください。 セル幅が広がったでしょう。 つぎに、[E]と[F]の境界線もダブルクリック。以下同。 次。 「C3」のセルから「H3」のセルまでが太線で囲われていますね。 この状態で、「H3」の右下隅にマウス。 「+」が表示されたら、これを「H8」までドラッグ。 「1900/1/3」「1900/1/4」………と表示が変ですね。 でもここで、間違ったと慌てて、コピーした式を削除しないでください。 これで正しいのです。この式はこのままにして置いて、次の作業。 「B4」に「= H3+1」と入力。 意味は分かりますか? 「H3」の1日あとの日付を「B4」に求めたのですよね。 そこで、入力後。【Enter】。 「2005/1/2」で正解。 これを、「B8」まで右下隅をドラッグ(コピー)。 カレンダーは全て正しい1月の日付を表示したでしょう。 ここで完了。としたいところですが、見栄えが何となく冴えません。 少しカレンダーらしく体裁を整えましょう。 6 年月日を日に 先ず、年月日で表示されている日付を「日」に変えましょう。 「B3」から「H8」までを反転させてください。 次に、ツールメニューの[書式]→[セル]とクリック。 若しくは、反転セルの上で、右クリック。 [セルの書式設定]が表示されます。 表示形式画面の[分類(C):]は「日付」。[種類(T):]は「1997/3/4」。これは年月日の 表示の Excel の指図です。 そこで、[種類(T):]を「1997/3/4」から「4」に設定替。と考えて、[種類(T):]の中 をいくら探しても「4(日)」はありません。 そこで、[分類(C):]を「ユーザー定義」に切り替えてください。 切替後、[種類(T):]に「d」と入力。 そして、右下の[OK]をクリック。 反転した日付セルは、全て「日」表示に。 無事完了。 でも、まだ普通のカレンダーとは違う? 7 前後の月の日付を消す 12月の日付と2月の日付が表示されている! では、この表示を消しましょう。 でも、このセルを通常の方法で消去してしまいますと、今表示されている1月以外の月に このカレンダーを利用出来なくなります。 日付の消す方法を別に考えましょう。 カレンダーの背景が白ですから文字を白にすれば、データは生きていても私たちの目から は消えますか? というわけで、12月と2月の日付のセルを指定して文字色を白にする? でも、この画面をやはり他の月に利用すると、????。 この解答。 メニューバーの[書式]をクリック。 [条件付き書式(D)]をクリック。 そして、表示された[条件付き書式の設定]のウィンドウに次のように入力します。 現在表示されている1月のカレンダーのうち、前の月「12月」と後の月「2月」の日付 として表示されている日を白にしたい。 そこで条件の設定、 数式が = MONTH(B3)<>$B$1 とします。 MONTH 関数は、B3 セルの日付から、月だけを取り出す関数ですので、 MONTH(B3)で「12」が取り出され、 この「12」が$B$1 セル(B1 セルと同じことです。……絶対参照と言います)と“=”でな い(“<>”である)。 すなわち、B1 セルは「1」ですから「12」とは“=”でない。 〔12<>1〕ということになります。 このことは、12月のみでなく、2月の「2」についても同様です。 この条件が成り立った場合に、どうするかは、書式に設定します。 [書式(F):]をクリック。→[セルの書式設定]ウィンドウを表示。 このウィンドウの[フォント]タブで、 [色(C):]の▼ をクリックをして、 「白」をクリック。 [OK]をクリック。 [条件付き書式の設定]の[書式(F):]の左のプレビュー枠が「白」になっている筈です。 よって、下のOK をクリック。 カレンダーの反転画面のうち、1月の日付でないセルの数字が白文字になっていますか? なっていれば成功。 いかがですか。成功!成功! $B$1 の意味 セル名に「$」を付けると、絶対参照という形式になります。 絶対参照とは、どこのセルからでもそのセルを指す。 すなわち、B3 セルで B1 セルを指定する。それをコピーして C3 セルにもってくると、指定セルは C1 セルになってします。 これを指定セルは B1 セルのままにする。これが絶対参照です。 セル名に「$」を付けることによって、 そのセルは絶対参照になります。 「B」も絶対参照、「1」も絶対参照ですので、 「B」にも「1」にも「$」を付けます。 文字を白にしないで、他の色にして表示させとく。 そんなカレンダーもまたいいですね。工夫してみてください。 8 年・月をつける 年度「2005」と月度「1」に、それぞれ「年」「月」をつけます。 「2005」に年を追加入力し、「1」に月を追加入力しますと、この入力は文字扱いになっ てしまいます。 先に式を入力した「I2」セルをみてください。 「= DATE(HI,B1,1)」となっていますね。 年は「HI」セルを、月は「B1」セルを引用しています。 これは、H1 セルの「2005」や B1 セルの「1」が数値なので可能なのです。 そこで、「2005 年」「1 月」の表示は、H1 に入力されている「2005」と B1 に入力されてい る「1」を数値として扱い、かつ、それに「年」「月」が追加表示されるように工夫しな ければなりません。 その答えは、「書式設定」です。 H1 セルをアクティブセルにして、 メニューバーの[書式]→[セル](若しくは、右クリックでセルの書式設定を選択)で、 表示形式タブ画面の[分類(C):]をユーザー定義にして、 [種類(T):]の「G/標準」を 、「#"年"」に変更して入力。 画面下の[OK]をクリック。 同様に B1 セルも、セルの書式設定で、 表示形式タブ画面の[分類(C):]を、「#"月"」に変更して入力。 ついでに、月の表示を大きくするために、表示形式タブ画面をフォントタブ画面に切り替 えて、フォントを「20」にしましょう。 そして、[OK]をクリック。 9 囲み・格子をつける B2 から H8 までを反転。 ツールアイコンの罫線ボタン▼をクリック。罫線の一覧が表示されます。 この中から格子を選んで、クリック。 反転エリアの外、どこでもよいですから外側でマウスをクリック。 カレンダの曜日・日付に囲み罫線がつきました。 10 文字に色を付ける 日曜日を赤く表示。 B2 から B8 までを反転 マウスの右クリックで、セルの書式設定をクリック。 フォントタブ画面で、[色(C):]の▼ をクリックして、色一覧から「赤」をクリック。 画面下の「OK」をクリック。 反転画面の外でクリック。 カレンダの見栄えは如何でしょう。 左を空きを縮めたい。行を広げたい。………… 11 A 列を縮める 12 行を広げる 行見出しの「1」から「8」までをドラッグして、反転。 どこの行でもいいですから、任意の行をドラッグして、行を広げる。 13 列を広げる・縮める 同様に列見出しの「B」から「I」までをドラッグして反転。 どこの列でもよいから、任意の列をドラッグして、列を広げる。若しくは縮める。 14 文字を中央に 日付の表示をセルの中央に揃えましょう。 「B3」から「H8」を反転。 メニューアイコンの[≡中央]をクリック。 反転エリアの外でクリック。 如何でしょうか。カレンダとしての出来映えは? オオヨソ満足。 では、カレンダの月めくりを工夫しましょう。 15 月めくり……スピンボタン メニューバーで[表示]→[ツールバー]→[フォーム]でクリック。 フォーム一覧を表示。 この内の「スピンボタン」を選択。クリック。 この状態で、「スピンボタン」をドラッグで「I1」セルの置いて下さい。 スピンボタンが「I1」セルの収まらないときは、適宜の大きさに調整して下さい。 大きさはOKですか。 よければ、次。 スピンボタンの周りに白い□が付いていますか? 付いていれば、このままの状態で、 メニューバーの[書式]→[コントロール]をクリック。 コントロールの書式設定ウィンドウが表示されたら、 コントロールタブ画面の[最小値(M):]を「1」、[最大値(X):]を「12」と設定。 …………意味わかりますよね。………… そして、[変化の増分(I):]は「1」のままで、 [リンクするセル(L):]を「$B$1」と入力する。 画面下の[OK]をクリック。 フォームの一覧は、じゃまですから消去。 スピンボタンをクリックしてみて下さい。 カレンダの月が切り替わりますか? 16 祝日を赤く ●祝日一覧を作る 祝日を赤文字にするには、先ず祝日リストが必要です。 祝日リストは、このシートの上に作成しても大丈夫ですが、今一枚のシートを利用してみ ましょう。 現在 の シ ー トの タ ブ は 、下 の 左 側に あり [Sheet1] と表 示さ れ てい ます ので 、そ の右 の [Sheet2]をクリック。→新しいシートが Excel に表示されました。 このシートに祝日をリストアップします。 祝日をチェックしましょう。……… http://www.cao.go.jp/ A1 セルに「2005/1/1」と、B1 セルに「元旦」と、 A2 セルに「2005/1/10」と、B2 セルに「成人の日」と入力。以下、リストアップします。 2005/2/11 建国記念の日 2005/2/12 2005/3/20 200/5/4/29 春分の日 みどりの日 2005/5/2 2005/5/3 憲法記念日 2005/5/4 2005/5/5 こどもの日 2005/7/18 海の日 2005/9/19 敬老の日 2005/9/23 秋分の日 2005/9/24 2005/10/10 体育の日 2005/11/3 文化の日 2005/11/23 勤労感謝の日 2005/12/23 天皇誕生日 2005/12/24 ところで、祝日の名が記されていない年月日は何故休み。法律で休みと休みに挟まれた日 は休みとされているのですが、おわかりでしたか。 さて、祝日の一覧が出来上がったら、この一覧に名前を付けます。 A1 から A19 までを反転。 メニューバーで[挿入]→[名前]→[定義]をクリック。 名前の定義のウィンドウで、[名前(w):]に「祝日一覧」と入力。 [OK]をクリック。 なお、以上の祝日一覧は2005年版です。作成したカレンダーを2006年 版に切り替えるときは、この祝日一覧は作り替えてください。 ● 条件付き書式で設定 シートを、[Sheet1]に戻します。 カレンダーの B3 から H8 までを反転。 メニューバーの[書式]→[条件付き書式]をクリック。 条件付き書式の設定ウィンドウが表示されます。 既に、前に設定した条件がこのウィンドに入力されているので、 ウィンドウの下の 追加(A)>> をクリック。 新しく現れた条件 2 に条件を設定。 [セルの値が]を[数式が]に変更。 その右に「= COUNTIF(祝日一覧,B3)>0」と入力。 書式(O)をクリック。 次のウィンドウが現れます。 この「セルの書式設定画面」で、[色(C):]を「赤」に設定。 [OK]をクリック。 すると、次の画面に戻ります。戻ったこの画面で[OK]をクリック。 最後に、カレンダーの画面で、反転の外のセルをクリック。 完成。 COUNTIF 関数は、 指定したセルに特定の値がいくつ含まれているかを調べる関数です。 よって、祝日一覧の中に、B3 の値がいくつあるかを調べます。 仮に、同じものがあれば「1」になりますので、「0」より大きいとい う条件に合致しますので、赤表示ということになります。 17 最終チェック ● 枠線を消す カレンダ表示をすっきりさせましょう。 メニューバーで[ツール]→[オプション]をクリック。 [表示タブ画面]で、下のウィンドウオプションの[枠線]のチェックをはずしましょう。 下の[OK]をクリック。 ● I2 セルを消去 I2、I3、J2 の表示を消しましょう。しかし、これらのセルには式が入力されているので、 これを削除してしまいますと、カレンダーが壊れてしまいます。 したがって、ここでの消去は、見えなくするということ。 それには、文字色の変更でしたね。 よって、文字色を「白」(背景色)に変更。 ● シート名の変更 「Sheet1」を「カレンダ」に変更。 シート名「Sheet1」の上で右クリック。[名前の変更]をクリック。「カレンダ」と入力。 「Sheet2」を「祝日一覧」に変更。 こんなカレンダーも作れます。