- ベストアンサー
エクセルでのカレンダー表記
エクセル2003なのですが セルにカレンダー表記をさせたいのですが 挿入→オブジェクトでのカレンダーでした場合 どうしても 当日が反転してるので セル自体に日&曜日を入れようと思うのですが =IF(B5="","",MID("日月火水木金土",WEEKDAY(B5),1))で曜日 =IF(B1="","",IF(B2="","",(DATE(1988+B1,B2,1))))で日を計算させた場合 毎月一番左(上)は1日になってしまいます。 実際のカレンダーのように 曜日が 月火水木金土日 の順番で 1wごとに表記させたいのですがどうすればいいのでしょうか? 年 月は別のセルに入力はする予定です
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
#03です >種類が3になってるので4=金曜ですよね はい、その通りです。 DATE関数で生成した月初の2006/9/1から4を引いた8/28の日付がカレンダの左上の基準日(月曜日)になります。 基準日セルがA4(式は =DATE(A1,B1,1)-WEEKDAY(DATE(A1,B1,1),3) )だとするとB4は =A4+1 で求めることができます。C4は =B4+1です 翌週の月曜はA5セルになりますが =A4+7 で求められます。 なお質問文では「月火水木金土日の順番」とのことでしたので上記方法を説明しました。補足では「日月火水木金土」になっていますが、それだと式を見直す必要がありますね。
その他の回答 (5)
- mshr1962
- ベストアンサー率39% (7417/18945)
#2です。この場合曜日は固定でいいのですよね。 A B C D E F G 1 2006 9 2月 火 水 木 金 土 日 3 A3には =DATE($A$1,$B$1,1)-WEEKDAY(DATE($A$1,$B$1,1),3) B3には =A3+1 としてG3までコピー A4には =A3+7 としてG4までコピーしたらこの行を7行目までコピーします。 A3~G7までを選択してセルの書式設定の表示形式を d として日付のみ表示 「書式」「条件付き書式」で 「数式が」「=MONTH(A3)<>$B$1」として「書式」ボタンを押し文字色を背景と同じ色を設定にします。 上記の9月の例だと 月火水木金土日 28293031123 45678910 11121314151617 18192021222324 2526272829301 となりますが前月と来月の部分は条件付き書式で非表示の状態になります。
お礼
ありがとうございました。 前月&次月の日は条件付で薄い色にしておきました。
- zap35
- ベストアンサー率44% (1383/3079)
#03です。 >月一番左上は1日になりませんかね?? 実際に試されてのコメントですか? なりませんよ。 1日がある週の月曜日の日付になります。今月なら8/28(月)です。 8/28~8/31は表示させたくないなら条件付き書式で 「数式」「=セル<DATE(A1,B1,1)」のとき「文字色を白にする」とでもしておけば良いのでは?
補足
理解不足で申し訳ありません =DATE(A1,B1,1)-WEEKDAY(DATE(A1,B1,1),3) の計算式の場合 A1=2006 B1=9 と入力していた場合 DATE(A1,B1,1) で計算結果2006/9/1 (シリアル値38961) となってWEEKDAY(DATE(A1,B1,1),3)の結果は4、となると種類が3になってるので4=金曜ですよね そうなると その月の1日目の曜日がわかるとは思うのですが B2の値を変更した場合 毎月月曜から始まるカレンダーを自動計算できますでしょうか?
- zap35
- ベストアンサー率44% (1383/3079)
#01です。すみませんオブジェクトは使わない方法ですね A1に年(2006)、B1に月(9)があるときカレンダの左上の日付(月曜日)以下の式で求めることができます。 =DATE(A1,B1,1)-WEEKDAY(DATE(A1,B1,1),3) その右隣のセルは簡便に求めるなら上記セルの値に+1、真下のセルは+7で求められます。
補足
その場合って 毎月一番左上は1日になりませんかね?? #2さんの補足にもかかせていただいた感じのカレンダー表記にしたいのですが やはりむりですかね?
- mshr1962
- ベストアンサー率39% (7417/18945)
B5=DATE(1988+B1,B2,1)なのでしょうか? そうでない場合は、違う結果になりますが... 日=IF(OR(B1="",B2=""),"",,DATE(1988+B1,B2,1)) 曜日=IF(日のセル="","",TEXT(日のセル,aaa)) の方が簡単です。
補足
B5=DATE(1988+B1,B2,1)の計算式となってます そうした場合毎月表記上は一番左上が1日となって 翌日は計算結果+1の数字になりますよね そうではなく今月であれば 日月火水木金土 12 3456789 10111213141516 17181920212223 24252627282930 という感じでの表記にしたいんですが
- zap35
- ベストアンサー率44% (1383/3079)
>挿入→オブジェクトでのカレンダー とは「MICROSOFT カレンダーコントロールXX.0」のことですか? OFFICE2003ではバージョンは11.0であればカレンダーオブジェクトのプロパティで週の始まりの曜日を設定できます。 >セルにカレンダーを表記 となると、オブジェクトは使用しませんが質問はオブジェクトを使用しない方法についてですか?
お礼
理解力不足で申し訳ありませんでした。 できました ありがとうございました。