- ベストアンサー
カレンダーの作成
エクセルにて カレンダーというか年と月を入力すると 下の表に1~31 と その曜日が出せるようにしたいのですが そのような式わかる方いらっしゃいますでしょうか A1 年(年号表示なので今なら18) A2 月 A3~34(その月の日) B3~34(その月の曜日) ってな感じで表を作成したいのですが・・・ 各セルを&でくっつけたとかしてみたんですが・・・だめでした お願いします。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
A3 =DATE(1988+A1,A2,1) A4 =A3+1 A4をフィルで28日目(~A30)までコピー A31 =IF(A30="","",IF(MONTH(A30)<>MONTH(A30+1),"",A30+1)) A31をフィルで31日目(~A33)までコピー A3:A33 を、書式設定から「ユーザー定義」を選択して [ d ] に設定して日付表示にする。 B3 =IF(A3="","",MID("日月火水木金土",WEEKDAY(A3),1)) と入れてフィルでコピー。
その他の回答 (6)
- imogasi
- ベストアンサー率27% (4737/17069)
C1に2006、D1に6 A2に=WEEKDAY(DATE($C$1,$D$1,1)) A4に=DATE($C$1,$D$1,1)-$A$2+(ROW()-4)*7+COLUMN() G4まで式を複写。 A4:G4を範囲指定し、G4で+ハンドルを出し、A8:G8まで+ハンドルを引き下げる。 書式をユーザー定義のd にする。 条件付き書式で式が=NOT(AND(YEAR(A4)=$C$1,MONTH(A4)=$D$1)) 書式を文字を白色(当該月以外は文字色を白にして見えなくする) 設定。 曜日見出し、日曜の赤字にする、などはメイン課題で無いので略。 A2セルの数字も、白色にして隠す手もある。
お礼
ありがとうございました。 年号と西暦の変更方法も忘れてました ありがとうございました まとめレスでまことに申し訳ないです いろんなやり方ありますね大変勉強になりました ありがとうございました
- mu2011
- ベストアンサー率38% (1910/4994)
No5です。 B3の設定が間違っていましたので訂正します。 =IF(ROW()-2>DAY(DATE($A$1+1988,$A$2+1,0)),"",DATE($A$1+1988,$A$2,A3))
- mu2011
- ベストアンサー率38% (1910/4994)
次の方法は如何でしょうか。 A3に=IF(ROW()-2>DAY(DATE($A$1+1988,$A$2+1,0)),"",ROW()-2) B3に=IF(ROW()-2>DAY(DATE($A$1+1988,$A$2+1,0)),"",DATE(A1+1988,A2,A3)) を設定し、A33/B33までコピー B3:B33セルの書式設定はユーザ定義で(aaa)として下さい。
- TTak
- ベストアンサー率52% (206/389)
#2です。間違いがありました。 私の場合、A31~A33はそれぞれ =IF(DAY(A30+1)<28,"",A30+1) =IF(DAY(A30+2)<28,"",A30+2) =IF(DAY(A30+3)<28,"",A30+3) また、セルの書式はA4~A33,B4~B33も同じようにコピーします。
- mshr1962
- ベストアンサー率39% (7417/18945)
B3=TEXT(DATEVALUE("H"&$A$1&"/"$A$2&"/"&$A3),"(aaa)") でB3に(月) のような表示になります。 月曜日がいいなら "(aaaa)" とaを4つにする。 Monがいいなら "(ddd)" とdを3つにする。 Mondayがいいなら "(dddd)" とdを4つにする。 で設定可能です。
- TTak
- ベストアンサー率52% (206/389)
セルB1に ="H"&A1&"."&A2&".1" として、セルA3に =B1*1 と記入して、セルの書式をユーザー定義で d とします。次にセルB3に =WEEKDAY(A3,1) と記入して、セルの書式をユーザー定義で aaa とします。 セルA4に =A3+1 セルB4に =WEEKDAY(A4,1) として、これを下方向にコピーすればお望みのカレンダーができます。 ただし、A31~A33, B31~B33は工夫が要ります。 私の場合、A31~A33はそれぞれ =IF(DAY(A30+1)<28,"",A30+1) =IF(DAY(A30+1)<28,"",A30+2) =IF(DAY(A30+1)<28,"",A30+3) とします。B31~33はそれぞれ =IF(A31="","",WEEKDAY(A31,1)) =IF(A32="","",WEEKDAY(A32,1)) =IF(A33="","",WEEKDAY(A33,1)) とします。
お礼
ありがとうございました。 年号と西暦の変更方法も忘れてました ありがとうございました