• ベストアンサー

エクセルで作成したカレンダーのフォントの色を変えたい

エクセル2002です。 Sheet1にカレンダーを作成して、Sheet2に作成した祝日を参照してカレンダーのフォントの色を赤く表示します。 この時の数式が2個必要ですが、例えば =AND(COUNTIF(祝日,B3)>0,MOD(MONTH(B3),2)=1) =AND(COUNTIF(祝日,B3)>0,MOD(MONTH(B3),2)=0) これを1個の数式で出来るでしょうか。

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

  • ベストアンサー
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.4

#02です。例えばこういう事でしょうか  1)奇数月のカレンダの文字は青色にする  2)偶数月のカレンダの文字は紺色にする  3)「祝日」に合致する日は奇数月、偶数月に関係なく赤色にする  4)「記念日」に合致する日は奇数月、偶数月に関係なく緑色にする 2003までの条件付き書式では条件が3つまでしか指定できないので、これを実現できない できるんです。 確かに条件付き書式の条件は3つまでしか指定できませんが「はじめにカレンダの文字を青色にしておく」と後は3つの条件になります 条件1 =COUNTIF(記念日,B3)>0 → 書式で文字を緑色 条件2 =COUNTIF(祝日,B3)>0 → 書式で文字を赤色 条件3 =MOD(MONTH(B3),2)=0 → 書式で文字を紺色 優先して表示したい色の条件を先に記述してくださいね 

ed_7126
質問者

お礼

早速のご回答有難うございます。 私の説明が要領を得ずご迷惑をおかけしました。 上記の回答を拝見して、出来ると確信しました。 今後とも、なにかとお世話になります。 70歳過ぎてパソコンを始め、用語もよく理解していない質問にお付き合い頂き、有難うございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.3

#02です これは条件付き書式の数式だったのですね。そのような前提は省略せず書かれた方がよいですよ Sheet1のカレンダがどのように作られているかわかりませんが、MOD関数で月を分ける必要がありますか? Sheet2のA列の「祝日」範囲に合致する日付があれば休日という考えで良さそうに思いますが… 結局は#02で書いたことの繰り返しになりますが  =COUNTIF(祝日,B3)>0 だけで祝日判定ができるのではないでしょうか

ed_7126
質問者

お礼

補足の追加です。 >条件1 記念日のフォントを緑 これはSheet3のA列に記念日を記入したものをSheet1のカレンダーから 参照する時の条件です。

ed_7126
質問者

補足

有難うございます。 カレンダーの奇数月のセルに色を付けて偶数月と区別しています。 カレンダーを一月分印刷した時、前月と翌月が一部表示されるので、色分けして見やすくしています。 カレンダーの表示は2008/1/1→2008/5/1のように 年、月を変更すると指定した月のカレンダーが表示するようにしています。 ご教示いただいた、IF…で 条件1 記念日のフォントを緑 条件2 祝日のフォントを赤 にしたところ、該当日のフォントは正しい色となりました。が、 問題がありまして、偶数月のその他の日は緑で表示されます。奇数月は問題ありません。 >結局は#02で書いたことの繰り返しになりますが > =COUNTIF(祝日,B3)>0 これは試してみます。 エクセル2007で作成したところ、質問で記入したAND…を4条件設定すると、すべての月で正しく表示されました。しかし、他のバージョンでは3条件を超えると使用出来ないため、何とかしたいと考えています。

全文を見る
すると、全ての回答が全文表示されます。
  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

> =AND(COUNTIF(祝日,B3)>0,MOD(MONTH(B3),2)=1) > =AND(COUNTIF(祝日,B3)>0,MOD(MONTH(B3),2)=0) この二つの条件はOR条件にするのですか? それともAND条件ですか? もしOR条件にするなら =IF(COUNTIF(祝日,B3)>0,真の動作、偽の動作) になります。MOD(MONTH(B3),2)は0か1のどちらかの値を取りますから、COUNTIFの条件だけを考えればよいのです AND条件にするなら、これは成り立ちません。必ず「偽」になります。MOD(MONTH(B3),2)=0とMOD(MONTH(B3),2)=1の両方が同時に真になることはあり得ないからです

ed_7126
質問者

補足

sheet2に祝祭日をA列に記入しています。 sheet1のカレンダーは1月から12月まであります。 二つのAND条件式でフォントの色を赤にすると、奇数月と偶数月のカレンダーのsheet2に該当する日が赤字で表示します。 > =AND(COUNTIF(祝日,B3)>0,MOD(MONTH(B3),2)=1) > =AND(COUNTIF(祝日,B3)>0,MOD(MONTH(B3),2)=0) これが、そのときの条件付き書式の式です。 sheet3に他の記念日など記入して、カレンダーの記念日のフォントを緑で現したいのですが、条件は3個しか選べないので、赤字、緑字を使うために、それぞれ一つの条件式で出来たらと思い質問しました。

全文を見る
すると、全ての回答が全文表示されます。
  • marbin
  • ベストアンサー率27% (636/2290)
回答No.1

どのようなことをする数式か分かりませんが、 OR で結合する、ではだめですか?

ed_7126
質問者

補足

ご回答有難うございます。 使用した数式は、ANo,2をご覧ください。 >OR >で結合する、ではだめですか? 2式の結合はどのようになるのでしょうか。ご教示頂ければありがたいです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルで条件書式と入力規則を使い、カレンダーを作りたい!

    仕事でエクセルを使って、 「各営業所における営業日の実績データ」を収集しているのですが、 PCを得意としていない人たちが入力していることもあり、 休業日など目的と違うところにデータを入力してしまうことがあります。 そこで、視覚的に入力するところを分かりやすくし、 それでも間違ったところに入力してしまうのを防ぐため、 条件書式と入力規則を使って、カレンダーを作りました。 年月を入力すれば自動的に日付が変わるカレンダーを作り、 日付は正しく反映されているのですが、 営業日と休業日が上手く反映されず、その原因が分かりません・・・。 当社の営業日設定なのですが、 基本的に平日と日曜が営業日で、休業日は土曜と祝日になります。 ただし、平日が祝日だった場合は休業ですが、 日曜日と祝日が重なった場合は営業日になります。 なお、年末年始(12/31~1/3)は休業日になります。 さらにややこしくなってしまうのですが、 GW中(4/28~5/7)の日曜日、年末年始(12/30~1/5)の日曜日は、 長期連休ということで休業日になっています。 エクセルのデータですが、 列Aには日付(A3が1日)、列Bには曜日が入力してあり、 列Cと列Dに実績データを入力してもらう形にしてあり、 ここに条件書式と入力規則を設定しています。 また、セルV2~W33までに各祝日のリストとその振替休日、 加えてそれ以外の休業日(12/30、1/2、1/3)の日付を記入してあります。 前置きが長くなってしまって申し訳ございません。 以下が、私の考えた条件書式と入力規則の流れです。 まず休業日を考え、入力規則のユーザー設定に、 =OR( COUNTIF($V$2:$W$33,$A3)<>0, MOD($A3,7)=0 ) (※祝日リストに日付があるか、土曜日である) として、さらにGW・年末年始休業の部分を、 AND(MOD($A3,7)=1,AND(MONTH($A3)=4,DAY($A3)>=28)), AND(MOD($A3,7)=1,AND(MONTH($A3)=5,DAY($A3)<=7)), AND(MOD($A3,7)=1,AND(MONTH($A3)=12,DAY($A3)>=30)), AND(MOD($A3,7)=1,AND(MONTH($A3)=1,DAY($A3)<=5)), と考えました。また祝日かつ日曜日は営業日となることを、 AND(COUNTIF($V$2:$W$33,$A3)<>0,MOD($A3,7)=1), と考えて、その逆が休業日であることから、 =OR( COUNTIF($V$2:$W$33,$A3)<>0, MOD($A3,7)=0, OR(COUNTIF($V$2:$W$33,$A3)=0,MOD($A3,7)<>1), AND(MOD($A3,7)=1,AND(MONTH($A3)=5,DAY($A3)<=7)), AND(MOD($A3,7)=1,AND(MONTH($A3)=4,DAY($A3)>=28)), AND(MOD($A3,7)=1,AND(MONTH($A3)=12,DAY($A3)>=30)), AND(MOD($A3,7)=1,AND(MONTH($A3)=1,DAY($A3)<=5)) ) 上記を休業日として入力規則に入力しようとしましたが、 長過ぎて入らないようなので、GW・年末年始休業の部分を、 必要な該当月ごとに書き換えてみましたが、うまくいきませんでした。 ちなみに、その逆が営業日であるので、条件付き書式の数式に、 =AND( COUNTIF($V$2:$W$33,$A3)=0, MOD($A3,7)<>0, AND(COUNTIF($V$2:$W$33,$A3)<>0,MOD($A3,7)=1), OR(MOD($A3,7)<>1,OR(MONTH($A3)<>12,DAY($A3)<30)) ) と入力し、確認しましたが、やはりダメでした。 (ちなみに、「祝日かつ日曜日」があり「年末年始休業日」もある  2012年12月に設定を入力しながら結果を確認していました。) いろいろ試行錯誤した結果、一つ一つはどうやら正しいので、 組み合わせたときに、「祝日かつ日曜日」と「祝日でない」が 同居しているのが悪いと思うのですが、何か解決策はないでしょうか? 長い文章になってしまい恐縮ですが、ご教授お願い致します。

  • Excelでのカレンダー作成について

    Excelでカレンダー(1カ月分)を作っているのですが、祝日に色を付けるのがどうしてもうまくいきません。 祝日の日付を入れたセルを用意したのですが、1つ関数につき1日分しか色をつけれませんでした =COUNTIF((1),(2))>=1 (1)祝日の日付を入れた複数の範囲のセル (2)カレンダーの日付のセル[1日分] これでやると1カ月分すべてのセルに対して1日ずつ条件を入れなければならないです。 (2)で1カ月分の日付の範囲をすべて選択してみたのですが、うまく表示されませんでした(>_<) どのような関数をつかえば、1カ月分すべての祝日の色を変えることが出来るでしょうか? 回答お願いしますm(_ _)m

  • エクセルカレンダーの作り方

    エクセル2003でカレンダーを作成したいです。 作成方法を教えていただきたく投稿いたしました。 祝日カレンダーというシートを作成し、 A5~A50まで日付(2013/01/01と表記) B5~B50まで祝日の名前が入った表を作成しました。           A       B      6  2013/01/01   元旦 7  2013/01/14   成人の日 8  2013/02/11   建国記念の日 9  2013/03/20   春分の日 10 2013/04/29   昭和の日 といった感じです。 別シート「シート1」のE2のセルに 2013/01/01 と日付をいれてあります。 この日付は毎日変わるのですが、そのすぐしたのセルE3のセルに 祝日カレンダーシートに対応している日付がきたら、祝日の名前を表示させたいのです。 1/1なら元旦。1/14なら成人の日。 といった感じです。 このやり方を教えていただけないでしょうか。 よろしくお願い致します。

  • 祝日の色つけ方法

    B3に年、B4に月、B5~B35に日、C5~C35に 曜日が入力されているExcelのカレンダーがあります。 別シート「祝日」に2016年の祝日カレンダーがあります。 条件付き書式でCOUNTIF関数を使って、 下記のサイトの通りに祝日に色をつけようとしているのですが、 上手くいきません。 どういった数式を入れればよろしいでしょうか。 教えていただけると幸いです。

  • EXCEL、条件付き書式でカレンダー

    EXCELでカレンダーを作っています 年数を入力したら、自動で祝日が表示される関数を作成し、 http://www.eurus.dti.ne.jp/yoneyama/Excel/jyo-syo_doniti.html 上記のサイトを参考に、祝日の一覧に名前を付けて 「=COUNTIF(祝日,B3)=1」を条件付き書式に登録して休日の文字色変更は出来ました。 コレを原紙としてブック内でコピーしていきたいのです。 しかし、普通に名前を付けるとブック単位になるので、同じ年の祝日しか見なくなり、 シート毎の名前を付けると今度は条件付き書式に登録できなくなります。 この問題になにか解決方法がありましたらご教授下さい。 よろしくお願い致します。

  • エクセル2003でカレンダーを作成したのですが

    そのカレンダーに、誕生日に該当する人の名前を 出てくるようにしたいのですがどういった関数?計算式?を 使用すればいいのでしょうか。 ひとまず、A1セルに2010/1/1を入力し、下に =IF(MONTH($A$1)<>MONTH($A$1-WEEKDAY($A$1)+COLUMN(F1)+7*(ROW(F1)-1)),"",$A$1-WEEKDAY($A$1)+COLUMN(F1)+7*(ROW(F1)-1)) を入れて、あとはオートフィルでカレンダーを作りました。 別シートに、「名前」「誕生月」「日にち」が入ったデータはあるので、ここから引っ張ってこれるようにしたいのですが・・ 説明が下手で申し訳ありません。 ちなみにエクセルはほぼ初心者です。カレンダーもネットで調べて、やっとこさ作成しました。 別シートのデータを、「月と日付別々じゃなくて12/3みたいに 打ち直して、こういう関数つかってやればいいんじゃない?」 などなど、あればお聞きしたいです。

  • EXCELで作成するカレンダーについて

    EXCEL2002での質問です。 シート1に31日分のカレンダーを作成し、セルA1(年)とセルB1(月)に記載された年月を変更することで 曜日固定の日付変動で毎月のカレンダーが表示するように作成しています。 (A3セルに、=DATE(A1,B1,1)-(WEEKDAY(DATE(A1,B1,1),1)-1)で作成しています) ~以下、シート1の各セルの役割~ ・第1行に A1 B1 年 月 ・A列に A2~G2 日曜~土曜(変動無し固定型) A3~G3 第1週の日付(変動有り) A4~G4 第1週のスケジュール表示領域 A5~G5 第2週の日付(変動有り) A6~G6 第2週のスケジュール表示領域 A7~G7 第3週の日付(変動有り) A8~G8 第3週のスケジュール表示領域 A9~G9 第4週の日付(変動有り) A10~G10 第4週のスケジュール表示領域 A11~G11 第5週の日付(変動有り) A12~G12 第5週のスケジュール表示領域 ~~~~~~~~~~~~~~~ これに付加をつけて、スケジュール機能を作成しようとしているのですが、 シート2以降、200806、200807、200808~というようにシート名を付け、 各シートに31日分の”行”を作成し(A3~A33までに1日~31日と記載)、 そこにスケジュール(B3~B33)を記載していきます。 この時、シート1側の年月(A1とB1)を2008年8月と変更した際に、別シート200808に記載された スケジュール(B3~B33)がシート1側の各日スケジュール領域に反映するようにするには、 どのように設定すればいいんでしょうか・・・? シートが固定してる場合は、シート1の各日のスケジュール表示領域に、 =200808!B3 などと200808のシートに記載されてあるスケジュールに通常参照を設定すればいいんですが、 シート1のA1とB1に記載された年月を2008年9月と変更した際に、 =200809!B3を参照するように作成したいのですが・・・。 基本的に、シート1側は年月を変更するだけの参照シートとしたいんです。 分かりにくい説明で申し訳ございませんが、ご教示頂ける方いらっしゃいましたら、 よろしくお願いいたします。

  • エクセル 関数で作成した万年カレンダーの保存法方

    エクセルで万年カレンダーを作成し 年度を変えると 曜日、祝日も変更します が、仮に 今年のカレンダーを作成し、そのまま保存しておいて 来年のカレンダーを作成することはできますか? 今年のカレンダーにいろいろと書き込んでいる為 しばらくは確認の為 PC上に残しておきたいのですが・・・ 祝日はシートに別入力していて 年度を書き換えると カレンダーに反映されるようにしています。 わかりにくい文章ですみませんが、宜しくお願いいたします

  • 万年カレンダーの作り方

    Excel初心者ですが、万年カレンダーを作成していて「条件付き書式」で「COUNTIF(祝日,C3)<>=1」を使用していて、添付画像の様にどうしても不要部分が有るので部分解除をして見たのですが出来ませんでしたので出来るのか、又は作成方法が間違って居るのか、どなたか私の希望に叶う方法が有れば作り方を教えて頂きたいです。 該当月に無い日付は別に「条件付き書式」「=MONTH(C3)<>$D$1」で非表示(白色)にしています。

  • 日祝日除く1月のカレンダーを作成したい(Excel)

    Sheet1 A1 2009(年) B1 1(月) C1~縦に日祝日除く1月のカレンダーを表示させたい。 Sheet2 http://www.eva.hi-ho.ne.jp/ohtake/excel/calender2.htmをもとに、 祝日一覧を作りました。(祝日一覧名:祝日) ここからどういう関数を使ったら、日祝日を除く1月のカレンダーが 作成できるかわかりません。 どなたか教えて下さい。 よろしくお願いします。

専門家に質問してみよう