いろいろな関数 七曜型万年?暦を作る

主な項目
1.[WEEKDAY] 関数
2.[DATE] 関数
3.[TEXT] 関数<
4.作成の手順

日曜から始まるカレンダーです。 

使用した関数:[WEEKDAY] ,[DATE],[TEXT]

[WEEKDAY] 関数

或る年月の月の初日の曜日を取得するために使用します。
関数名(引数1,引数2)で、引数1は「セル参照」、「2008/2/1」、「39479」の形で入力できます。
種類の「1」は、日曜から数えたときの、「2008/2/1」は6番目、即ち、金曜日を指しています。

関数式は「 WEEKDAY(シリアル値, 種類) 」です。

第1図

[DATE] 関数

数式パレットの注釈では、「指定した日付けを表す値を返します。」とあり「2008/2/1」と返されました。
関数名(引数1,引数2,引数3)で、引数1は(年表示)「セル参照」、引数2(月表示)も「セル参照」、引数3 (日表示)は「1〜31」の数値入力ですが、今回の場合「1」と入力しました。

関数式は「 DATE(年,月,日) 」です。

第2図

[TEXT] 関数

DATE 関数で年月日を取得しで文字列に変換する)

DATE(年,月,日)」は何年(A1は西暦年),何月(C1は月表示),1日)
元号「平成○○年」の関数式は「 =TEXT(DATE(A1,C1,1),"ggge年" 」です。

TEXT関数の数式パレットの引数1に「値」引数2が「表示形式」です。
注釈では:「数値に指定した書式を設定し、文字列に変換した結果を返します。」とあり、 「値には数値、結果が数値となる数式、または数値が入力されているセルへの参照を指定します。」となっています。
表示形式の注釈では:「表示形式には[表示形式]ダイアログボックスに表示されている数値形式を、文字列として指定します」となっています。

作成の手順

七曜型こよみのパターン

第3図

で、最大6X7の42枡目が必要になります。

例えば、2008年(閏年)2月で作成

使用数式、本家本元「2008/2/1(39479日)」金曜日の欄第1週目「 =DATE($A$1,$C$1,1+6)-WEEKDAY(DATE($A$1,$C$1,1)) 」です。


使用数式、日曜日の欄第1週目「 =DATE($A$1,$C$1,1+1)-WEEKDAY(DATE($A$1,$C$1,1)) 」です。

使用数式、日曜日の欄第2週目「 =DATE($A$1,$C$1,1+1)-WEEKDAY(DATE($A$1,$C$1,1))+(7*1) 」です。

使用数式、日曜日の欄第3週目「 =DATE($A$1,$C$1,1+1)-WEEKDAY(DATE($A$1,$C$1,1))+(7*2) 」です。

使用数式、日曜日の欄第4週目「 =DATE($A$1,$C$1,1+1)-WEEKDAY(DATE($A$1,$C$1,1))+(7*3) 」です。

使用数式、日曜日の欄第5週目「 =DATE($A$1,$C$1,1+1)-WEEKDAY(DATE($A$1,$C$1,1))+(7*4) 」です。

使用数式、日曜日の欄第6週目「 =DATE($A$1,$C$1,1+1)-WEEKDAY(DATE($A$1,$C$1,1))+(7*5) 」です。

使用数式、月曜日の欄第1週目「 =DATE($A$1,$C$1,1+2)-WEEKDAY(DATE($A$1,$C$1,1)) 」です。

使用数式、火曜日の欄第2週目「 =DATE($A$1,$C$1,1+3)-WEEKDAY(DATE($A$1,$C$1,1))+(7*1) 」です。

使用数式、水曜日の欄第3週目「 =DATE($A$1,$C$1,1+4)-WEEKDAY(DATE($A$1,$C$1,1))+(7*2) 」です。

使用数式、木曜日の欄第4週目「 =DATE($A$1,$C$1,1+5)-WEEKDAY(DATE($A$1,$C$1,1))+(7*3) 」です。

使用数式、金曜日の欄第5週目「 =DATE($A$1,$C$1,1+6)-WEEKDAY(DATE($A$1,$C$1,1))+(7*4) 」です。

と、このような具合で入力してあります。大方お分かり頂けたかと思います。
また、上の数式をコピーして、夫々のセルに「貼り付け」すると、下図のようになります。
暦の書体は「century」が似合います。

上のエクセル表ができましたなら、空白部分を適宜左セルの数式に1を加えるなどして埋めて完成させます。
2つのセルを埋めて縦にも、横にもオートフィルでも結構です。

日にちの範囲を選択して[書式]→[セル]→[表示形式]タブ →[ユーザー定義]で、「種類(T)」の[G/標準]欄に[d]と記入し{OK}すると、月分全セルが数式で埋まっていた場合「1〜28」,「1〜29」または「1〜31」の数字とその前後が求められます。
(若しです、万が一旨く変換されない場合.一旦[書式]→[セル]→分類欄[日付]で→[3/4]を選択して[OK]してから、上を実施してみてください。そのような経験がありましたので。)



下段の表をコピーして、EXCELのA1セルに貼り付けて、ご使用ください。
曜日の色付けが消された場合には、「条件付書式」で土、日の色を付けてください。関数の埋め込みは、そのまま生きています。

また、先月分、翌月分の日付が出るようでしたら、日付表示部分を選択して「条件付書式」の、 条件1(1))で[数式が]を選択し、右のテキストボックスに[ =MONTH(A3)<>$C$1 ]と入力。[書式]を「白色」に設定してください。


或る年月のこよみを印刷するのでしたら、空いた升目に、好きな写真なり、オートシェイブ作品などで、 飾ればよいでしょう。

2008 2 月 カレンダー 平成20年
27 28 29 30 31 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 1
2 3 4 5 6 7 8

上のコピー表で、2008(年)と2(月)の数値をかえると、暦が替ります。
なお、前ページ縦型暦と本七曜型暦では、IF関数、その他を使った、もっとスマートな方法もありますが、 敢えて、私独自の方法(IF関数も使わず、また、ダミーの「1〜7」のWEEKDAYの「種類」対応セルも使わない、結果オーライ型)を掲載しました。
インターネットGoogleで、「WEEKDAY関数」検索で何千、「カレンダー」検索で350万など沢山でてきます。


トップページへ戻る     ページのトップへ     EXCEL関数特集-総目次へ 縦型の万年?暦を作るへ戻る     いろいろな関数9へ進む

inserted by FC2 system