プロが教えるわが家の防犯対策術!

sheet1のA4~G35までに
土日祝日を塗りつぶしをしたいのですが、関数を教えてください。
べつのsheetには「祭日」という名前で作成してあります
(A1~A50までは2018/1/1から)
(B1~B50までは祝祭日名)
が作成してあります。
どうかよろしくお願いします。

「エクセルの条件付き書式設定」の質問画像

A 回答 (4件)

No.2です。



>セルA2は西暦で入力して、ユーザー定義で和暦の「年数」だけ表示しています。
>セルB2は同じく、ユーザー定義で「月」だけ表示しています。
>この方法で月が変わった時はセルA2に○/○と入力していました。

最後のA2セルの 「○/○」とは仮に2018年1月であれば
2018/1
と入力している!というコトなのでしょうか?

となるとA4セルの数式を
=IF(MONTH(DATE(YEAR(A$2),B$2,ROW(A1)))=B$2,DATE(YEAR(A$2),B$2,ROW(A1)),"")

としてみてください。
B4・C4セルの数式は前回のままで大丈夫のはずです。

これでC列に祝日名が表示されるはずなので、条件付き書式は曜日列(B列)とC列だけで対応出来ます。
(B列が日~土までの文字列なので・・・)

日・祝日の条件付き書式の数式を
=OR($B4="日",$C4<>"")

土曜の条件付き書式の数式を
=$B4="土"

としてみてください。

結局C列の祝日名表示のためだけにA列シリアル値が必要になります。

※ A2セルをどのように入力しているか?によってB2セルは不要になる場合があります。
仮に
2018/5 
のように入力し、2018年5月分のカレンダーにしたい場合は
単純にA2セルプラス1ずつにしていけばシリアル値がそのまま表示できます。
もちろん月末のエラー処理は必要になりますが・・・m(_ _)m
    • good
    • 0
この回答へのお礼

「できました~!」
ありがとうございました。
これで、毎月祝祭日や土日をカレンダーを見ながら
作成しなくてもすみます。
大変助かりました
こういう事が簡単にできる人って、尊敬します。
又、教えていただく事があるかもしれませんが
その時は、よろしくお願いします。

お礼日時:2017/12/19 20:56

続けてお邪魔します。



投稿後一つ気になったことが・・・
>セルB2は同じく、ユーザー定義で「月」だけ表示しています。

とはどんな形で入力しているのでしょうか?
今までの回答はあくまでB2セルはシリアル値ではなく
単に1~12の数値だけが入るという前提の数式になります。m(_ _)m
    • good
    • 0

こんばんは!



シリアル値で扱った方が簡単なので・・・
一例です。
↓の画像のSheet1のA2セルの表示形式はユーザー定義から
平成0年
とし、単に「29」のように、2018年の場合は「30」の和暦年の数値のみ入力します。
(平成もあとわずかなので、本来であれば西暦の方が良いとは思うのですが、)

B2セルの表示形式をユーザー定義から
0月
とし、こちらも表示したい月の数値のみ入力!

A4セル(セルの表示形式はユーザー定義から d日 としておく)に
=IF(MONTH(DATE(A$2+1988,B$2,ROW(A1)))=B$2,DATE(A$2+1988,B$2,ROW(A1)),"")

B4セルは
=TEXT(A4,"aaa")

C4セルは
=IFERROR(VLOOKUP(A4,祭日!A:B,2,0),"")

とし、A4~C4セルを範囲指定 → C4セルのフィルハンドルで31日分下へコピー!

そして質問の条件付き書式の設定です。
日・祝日は「赤」にし、土曜は色を変えています。
A4~G列最終行までを範囲指定 → 条件付き書式 → 新しいルール → 数式を使用して・・・ → 数式欄に
=OR(WEEKDAY($A4)=1,$C4<>"")
という数式を入れ → 書式 → 塗りつぶしから「赤」を選択しOK!

同様に・・・中略・・・ → 数式欄に
=WEEKDAY($A4)=7
とし → 書式 → 塗りつぶしから「青」(字が見えにくくなるので、水色にしています)

これで画像のような感じになります。

※ 条件付き書式の優先順位は画像の場合「土曜日」の方が上側になっているので
土曜が祝日でも「青」になります。
祝日優先にしたい場合は「条件付き書式のルールの管理」画面で
「赤」色の条件付き書式を上側に移動させれば可能です。m(_ _)m
「エクセルの条件付き書式設定」の回答画像2
    • good
    • 0
この回答へのお礼

うーん・・・

すみません。土日だけはできたのですが、祭日の表示が上手くいきませんでした。
セルA2は西暦で入力して、ユーザー定義で和暦の「年数」だけ表示しています。

セルB2は同じく、ユーザー定義で「月」だけ表示しています。
この方法で月が変わった時はセルA2に○/○と入力していました。
(これを変更しないで、条件書式の関数を入力出来ないでしょうか?
すみません。

お礼日時:2017/12/18 20:26

条件付き書式を使って、土・日・祝日のセルに塗りつぶし色を設定できます。


WEEKDAY関数またはNETWORKDAYS関数を使います。

http://office-qa.com/Excel/ex140.htm
    • good
    • 0
この回答へのお礼

うーん・・・

ごめんなさい。
祭日の列には祭日名も入れたいのですが
関数がよく分からなかったです。
無知ですみません。

お礼日時:2017/12/18 17:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!