• ベストアンサー

日付28日、30日、31日、月ごとに自動表示させたい。

日付28日、30日、31日、月ごとに自動表示させたい。 1、月によって28日、30日、31日と自動表示させたいです。 2、(添付画像:カレンダー)「D2」1日を基準に 「年」「日付」「曜日」「祝日」を自動表示とセルに条件つき書式を使って 色を付けたのですが、その下のセルにも月が変わるごと自動で色をつけたいです。 名前(1番~15番)の列(日付、曜日、祝日)です。 上記の2点教えて下さい。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

No.3です! エラーになっちゃいましたか~? 違っていたらごめんなさい。 もしかして、A1・C1はシリアル値で表示形式だけを変えているということはないでしょうか? 前回の数式の場合はA1は単に「2010」と「西暦年」を! C1は「11」という「月」の数値でないとエラーになると思います。 それからこの場を借りて前回の訂正をしたいと思います。 前回は2・3行目だけの色付け方法を投稿し、もし下の列も色付けしたいのであれば、 条件付き書式でそのままの数式で良い!というようなことを書いていましたが、 もし下の列も色付けしたいのであれば、範囲指定後に条件付き書式の数式を =WEEKDAY(D$2)=7 のようにしてください。(全ての条件の数式に必要です) 行番号の前に「$」マークを付けないと望み通りの結果にならないと思います。 この程度ですがエラーが他の原因ならごめんなさいね。m(__)m

haizi-123
質問者

お礼

出来ましたぁー♪♪ ありがとうございます! どうも大変お騒がせしてすみませんでしたm(_ _)m 何度か試しているうちに、セルに誤ったものがあちこち入っていました(汗) 下の列にも、教えて頂いた様に「条件付き書式」を入れてみました! 思ったとおりに列に色が付きました。 再度画像を添付出来る場所でもあれば、見て頂きたいです。^^ 丁寧な回答をして頂き助かりました。 どうもありがとうございました。

その他の回答 (4)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.4

元のデータがどのような設定してあるのか不明ですので一般論で回答します。 >1、月によって28日、30日、31日と自動表示させたいです。 例えば2月は29日以降は空白表示したいという意味でしょうか? その場合はD2セルに「1」と入力しE2セルに以下の式を入力し、右方向にオートフィルしてください。 =IF(OR(D2="",DAY(DATE($A$1,$C$1+1,0))<=D2),"",D2+1) >2、(添付画像:カレンダー)「D2」1日を基準に 「年」「日付」「曜日」「祝日」を自動表示とセルに条件つき書式を使って 色を付けたのですが、その下のセルにも月が変わるごと自動で色をつけたいです。 名前(1番~15番)の列(日付、曜日、祝日)です。 その下のセルの意味が良くわからないのですが、該当の列全体に色を付けたいという意味なら、数式を使った条件付き書式を利用します。 現在、3行目の曜日の表示方法と、祝日の対応をどのようにしているのかわからないのですが、日付シリアル値だけで表示するなら、条件付き書式の数式は以下のような数式になります。 日曜の列に色を付ける場合、D2セル以下のデータ範囲全体を選択して以下の数式を設定してください。 =WEEKDAY(DATE($A$1,$C$1,D$2))=1

haizi-123
質問者

お礼

MackyNo1さま お世話になります。 ご丁寧な回答ありがとうございます。 とても助かりました。 順をおって試したところ「2月は29日以降は空白表示」出来ました♪♪ 日曜の列に色も付きました。 この度は、ありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんにちは! 一例です。当方使用のExcel2003の場合です。 ↓の画像で説明させていただきます。 Sheet2に祝日データをシリアル値で作っておきます。(画像では今年と来年の祝日データをSheet2のA1~B23に作成しています) そして、Sheet2のA2~B23を範囲指定 → 名前ボックスに直接 祝日 と入力し、名前定義しておきます。 (シリアル値を範囲指定 → メニュー → 挿入 → 名前 → 定義 から名前定義しても構いません) Sheet1のD2セルに表示形式はユーザー定義から d としておきます。 D2セルの数式は =IF(MONTH(DATE($A$1,$C$1,COLUMN(A1)))=$C$1,DATE($A$1,$C$1,COLUMN(A1)),"") 次にSheet1のD3セルの表示形式はユーザー定義から aaa として D3セルの数式は =IF(D2="","",D2) D2・D3セルを範囲指定 → メニュー → 書式 → 条件付書式から 条件1で「数式が」を選択、数式欄に =WEEKDAY(D2)=1 として、「書式」 → 塗りつぶしで「赤」を選択 条件2で「数式が」 → 数式欄に =WEEKDAY(D2)=7 として、同じく「薄い青」を選択 条件3で数式欄に =COUNTIF(祝日,D2) として判りやすくするために今回は「黄色」を選択しています。 最後にD2・D3を範囲指定し、列方向に31日のAH列までオートフィルでコピーすると 希望に近い形にならないでしょうか? 尚、名前の行もすべて色を付けたいのであれば、D2・D3の範囲指定の領域を増やして 同様の条件付書式で対応できると思います。 以上、長々と書きましたが 参考になれば良いのですが・・・m(__)m

haizi-123
質問者

お礼

tom04さま お世話になります。 詳しい回答をして頂きありがとうございます。 とても分かりやすく助かりました。

haizi-123
質問者

補足

tom04さま お世話になります。 ご丁寧な回答ありがとうございます。 添付まで付けて頂きとても助かります。 順をおって試してみたところ、なぜか・・D2セルの数式を↓入れると  =IF(MONTH(DATE($A$1,$C$1,COLUMN(A1)))=$C$1,DATE($A$1,$C$1,COLUMN(A1)),"")  D2セル に #NUM! が入ってしまいます。 度々申し訳ございません。 よろしくお願いします。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

A1セルに2010などの年があり、C1セルに10などの月があるとします。 D2セルには次の式を入力して右横方向にオートフィルドラッグすることで指定した年月での月末の日にちまでが表示されます。日付の表示は表示形式から選びます。 =IF(MONTH(DATE($A$1,$C$1,COLUMN(A1)))<>$C$1,"",DATE($A$1,$C$1,COLUMN(A1))) 曜日についてはE2セルに次の式を入力して右横方向にオートフィルドラッグします。 =TEXT(D2,"aaa") その後に曜日や祝日に色を付けることになりますが、初めに今のデータがシート1で作られているとしてシート2のA1セルからA50セルまでの間にはその年の祝日が2010/1/1のように入力されているとします。そこでシート2のA1セルからA50セルを選択してから「数式」タブの「名前の定義」で名前の窓に 祝日 とでも入力します。 その後にシート1のD2セルからAH3セルを選択し、「ホーム」タブの「条件付き書式」から「新しいルール」を選択します。 「数式を使用して書式設定するセルを決定」を選択してから下方の窓に次の式を入力します。 =OR(TEXT(D2,"aaa")="日",COUNTIF(祝日,D$2)>0) 書式をクリックして「塗りつぶし」のタブから赤色などを指定してOKします。 次に土曜日に色を付けるために上記と同じように条件付き書式からで数式には次を入力し、書式では青色などを設定します。 =TEXT(D2,"aaa")="土" なお、祝日を別の色にするのでしたらそれぞれ条件付き書式を設定するときの式は次のようになりますね。 日曜 =TEXT(D2,"aaa")="日" 祝日 =COUNTIF(祝日,D$2)>0 土曜 TEXT(D2,"aaa")="土" なお、条件付き書式ではそれぞれの条件付き書式で優先度があります。 D2セルからAH3セルを選択してから「条件付き書式」で「ルールの管理」を選択します。 上段にある条件が最優先となりますので、下方に条件を上段にしたい場合にはその条件を選択したのちに「ルールの削除」ボタンの右側にある↑をクリックすればよいでしょう。

haizi-123
質問者

お礼

KURUMITOさま お世話になります。 先ほど、補足をさせて頂きましたが、 もう一度、試したところ回答頂いたとおり出来ました♪♪ 何度か試しているうちにセルに誤ったものが入っていました。 お騒がせして大変申し訳ございませんでした。 この度は、ありがとうございました。

haizi-123
質問者

補足

KURUMITOさま お世話になります。 ご丁寧な回答ありがとうございます。 とても助かります。 順をおって試してみたところ、なぜか・・D2セルの数式を↓入れると =IF(MONTH(DATE($A$1,$C$1,COLUMN(A1)))<>$C$1,"",DATE($A$1,$C$1,COLUMN(A1)))  D2セル に #NUM! が入ってしまいます。 度々申し訳ございません。 よろしくお願いします。

回答No.1
haizi-123
質問者

お礼

ありがとうございます(^0^) 教えてくださったページ見てみました。 今まで検索してもたどり着かなかったページでした! 今後の課題にも役立ちそうです。早速お気に入りに追加しました。

関連するQ&A