[[20031205235121]] 『三か月分のカレンダーつくり』(taka) >>BOT

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『三か月分のカレンダーつくり』(taka)

 年と月を入力すると自動で三か月分のカレンダーを作りたいのですが、困っています。祝祭  を別に参照させているのですが、年をまたぐ時の処理がわかりません。
 11月    12月   1月   /   12月   1月   2月
 1日 曜日 1日 曜日 1日 曜日
 曜日を祝祭日の参照を使って赤く表示させるようにしました。カレンダーの日付は前月+1  で  対応させていますが、翌年分の参照表の日付はそのままなので、曜日が正しく表示されません。11月からと12月からの2パターンで参照表の日付も正しくさせる方法はないものでしょ  う  か。
 ご存知の方教えてくださいませんか。
 すみませんでした。IF((月)>10・・・・でなんとかクリアできました。おさわがせいたしました。(taka)


 解決されたそうですが!参考までに以下手順を案内します。お暇な方は挑戦して遊んで下さい。
A1に2003と入力し、「セルの書式設定・表示形式・ユーザー定義」で 0"年" とします。	
A2セル選択して、データメニューの入力規則で入力値の種類を[リスト]。元の値を[1,2,3,4,5,6,,7,8,,9,10,11,12]とします。 	
A2セルで右クリックメニューで「セルの書式設定・表示形式・ユーザー定義」で 0"月" とします。	
A3セルに =DATE($A$1,A$2,1) と入力します。	
A4セルに =A3+1 と入力し、A30までコピーします。	
A31セルに =IF(A30="","",IF(MONTH(A30+1)<>A$2,"",A30+1)) と入力	
A32に =IF(A31="","",IF(MONTH(A31+1)<>A$2,"",A31+1)) とし、A33にコピーします。	
A3:A33を選択し、「ユーザー定義」で d"日"(aaa) とします。	
次の2003〜2004の祝日の表の範囲名を「祝日」とします。	
2003/01/01	元日
2003/01/13	成人の日
2003/02/11	建国記念の日
2003/03/21	春分の日
2003/04/29	みどりの日
2003/05/03	憲法記念日
2003/05/05	こどもの日
2003/07/21	海の日
2003/09/15	敬老の日
2003/09/23	秋分の日
2003/10/13	体育の日
2003/11/03	文化の日
2003/11/23	勤労感謝の日
2003/11/24	振替休日
2003/12/23	天皇誕生日
2004/01/01	元日
2004/01/12	成人の日
2004/02/11	建国記念の日
2004/03/20	春分の日
2004/04/29	みどりの日
2004/05/03	憲法記念日
2004/05/04	国民の休日
2004/05/05	こどもの日
2004/07/19	海の日
2004/09/20	敬老の日
2004/09/23	秋分の日
2004/10/11	体育の日
2004/11/03	文化の日
2004/11/23	勤労感謝の日
2004/12/23	天皇誕生日
B3に =IF(ISERROR(VLOOKUP(A3,祝日,2,0)),"",VLOOKUP(A3,祝日,2,0)) と入力、下方コピーします。	
A3:Bb33を選択して、条件付き書式設定で	
条件1 [数式が] [=$B3<>""] [フォント色を赤に設定] 	
条件2 [数式が] [=TEXT(A3,"aaa")="土"] [フォント色を青に設定] 	
条件3 [数式が] [=TEXT(A3,"aaa")="日"] [フォント色を赤に設定] 	
これで、A2セルの月をリスト変更すると各月の祝日と土日の色が付くようになります。	
3カ月分表示させたいのですからA3:B33を選択コピーして、E3とI32貼り付けます。	
E2に =MONTH(DATE($A$1,A2+1,1)) と入力します。この式をI2にコピーします。	
E3の式を =IF(E2<A2,DATE($A$1+1,E$2,1),DATE($A$1,E$2,1)) に変更します。この式をI32コピーします。
E3:F33の範囲選択して、条件付き書式設定で「条件1]の式[=$B3<>""]を[=$F3<>""]に変更をします。
I3:J33の範囲選択して、条件付き書式設定で「条件1]の式[=$B3<>""]を[=$J3<>""]に変更をします。
これで、2003/11と2003/12と2004/1の3ヶ月表示が可能になります。
日付、祝日、メモ欄を罫線で囲み、写真イラストなどを沿えて印刷設定して下さい。
 (シニア)


シニアさんありがとうございます。いちど試してみます。(taka)
 
 参照する祝日が固定されていると言う前提で質問します。祝日の日付もA1とA2から取得
する場合、例えば2003/11と入力した場合、参照している祝日の日付は2003年で
計算しないでしょうか。2004/1のカレンダーに2003年の祝日を参照しないのでしょうか。実は、ここで困っていました。参照祝日の日付取得にIF(A2>10、DATE(A1+1,・・・
で対処してみたのですが? (taka)


[[20031031204404]] 『休日の表示方法』(じゃぽね)
 祝日表を固定するにはA1の変更で出来る表にすればよいことになります。
例えば1月1日(元旦)のように日付が固定されている場合は =date($A$1,1,1) とすればよいのですが
成人の日、海の日、敬老の日、体育の日は月曜日になります。
成人の日の日付は =DATE($A$1,1,IF(WEEKDAY(DATE($A$1,1,1),1)<=2,2,3)*7-4-WEEKDAY(DATE($A$1,1,1)))
海の日の日付は =DATE($A$1,7,IF(WEEKDAY(DATE($A$1,7,1),1)<=2,3,4)*7-4-WEEKDAY(DATE($A$1,7,1)))
敬老の日の日付は =DATE($A$1,9,IF(WEEKDAY(DATE($A$1,9,1),1)<=2,3,4)*7-4-WEEKDAY(DATE($A$1,9,1)))
体育の日の日付は =DATE($A$1,10,IF(WEEKDAY(DATE($A$1,10,1),1)<=2,2,3)*7-4-WEEKDAY(DATE($A$1,10,1)))
で対応出来ますが、春分の日、秋分の日や振替休日も毎年変更します。
でも3ヶ月カレンダーの表示ですから、1月と2月だけ対応するようにA2の月が>10の条件で工夫して下さい。
 (シニア)


シニアさん色々アドバイスありがとうございます。ユーザ定義 0"年"や、月末の処理の仕方など勉強になりました。(taka)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.