Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : その他)
万年カレンダー祝日の書式設定
投稿日時: 21/01/07 12:42:35
投稿者: f85ux

こんにちは。
EXCEL バージョンは「Microsoft 365 MSO 64ビット」です。
 
質問内容です。
EXCELにて月曜日始まり、6行の表形式万年カレンダーを作成しているのですが、
祝日の色表示が上手くいかないので、質問させていただきました。
 
B2セルに月、他セルに西暦年データを対応させています。
各々の日付セルに対して、(例、$B$4セル)
 
=MONTH(MATCH(B4,祝日日付,0))<>$B$2 −<薄い赤色>
=MONTH(B4)<>$B$2 −<薄い灰色(土曜日は薄い青色)>
=MATCH(B4,祝日日付,0)−<赤色>
の順序で書式設定しています。
 
当月の日付は濃い色(正色?)、それ以外は薄い色(補色?)にて表示する設定です。
祝日データは2018-2022までのテーブルを別シートに作成しています。
 
結果...、
1行目と5、6行目の祝日日付の色表示が薄赤色にて表示されています。
しかしなぜか2018.1.1(月)と2019.1.1(火)は正しく表示されます。
 
ところが祝日データを2019- とすると
2019.1.1と2020.1.1は正しく表示されます。
 
さらに祝日データを2020- とすると
2020.1.1と2021.1.1は正しく表示されます。
 
という現状です。
5、6行目の祝日は全て薄赤色にて表示されます。
 
以上、内容は伝わりましたでしょうか?
ご対応よろしくお願いいたします。
 

回答
投稿日時: 21/01/07 13:28:41
投稿者: んなっと

引用:
=MONTH(MATCH(B4,祝日日付,0))<>$B$2 −<薄い赤色>

↓こうではないですか?
=AND(MONTH(B4)<>$B$2,MATCH(B4,祝日日付,0))

回答
投稿日時: 21/01/07 13:50:37
投稿者: Suzu

引用:
1行目と5、6行目の祝日日付の色表示が薄赤色にて表示されています。
しかしなぜか2018.1.1(月)と2019.1.1(火)は正しく表示されます。
  
ところが祝日データを2019- とすると
2019.1.1と2020.1.1は正しく表示されます。

 
 
=MONTH(MATCH(B4,祝日日付,0))<>$B$2 −<薄い赤色>
 
  B4は年月日の日付のデータ、祝日日付 も 年月日の日付データ でしょうか。
 
 MATCHで返されるのは、祝日日付のリスト内での位置を返す『数値』です。
 数値に対し MONTH関数を適用するのですか?
 
1行目 と言うのが、例示されている B4 の事?
 
5、6行目 の祝日日付?
   B4が 1行目だとすると、カレンダーは月曜日 から始まるとの事なので
  5、6行目は土日? と言う事?
    と言う事は、そのセルの背景色が予め設定してあり
    そこに祝日が重なったとき、条件付書式が適用されて思い通りの結果にならない?
 
 その場合、どのような色にしたいの?
   背景色そのまま以外なのでしょうか? であれば、条件付書式を外せば良いのではないのでしょうか?
 
やりたい事が判らないので、詳細部分はアドバイスできません。
思い通りにならない と言う事であれば、数式が思ったように機能していないのでは?
としかいえません。
 
件が合致しているのかをまずは確認しましょう・
条件付書式に数式を指定しているのであれば、B4 の 右側 に数式を設定してみては?
 
   C4: =MONTH(MATCH(B4,祝日日付,0))<>$B$2
   D4: =MONTH(B4)<>$B$2
   E4; =MATCH(B4,祝日日付,0)
 

投稿日時: 21/01/07 14:37:42
投稿者: f85ux

んなっと様、Suzu様
 
早々のご対応大変ありがとうございました。
結果、んなっと様のご指示に従って課題は解決いたしました。
ありがとうございました。
 
Suzu様、ご指摘のように分かりにくい質問内容だったように思います。
にもかかわらず、ご丁寧に解説していただきまして大変ありがとうございました。
1行に1日ずつ、月、火、水、木、金、土、日。
1行下にプラス7日…
7列 X 6行 = 42マスのカレンダーでした。
 
>MATCHで返されるのは、祝日日付のリスト内での位置を返す『数値』です。
>数値に対し MONTH関数を適用するのですか?
 
こちらに関しては改めて勉強しようと思います。
ありがとうございました。
 
 
本件解決済みとさせていただきます。