エクセル関数式と条件付き書式を使って指定日のセルを赤く塗りつぶす方法

このQ&Aのポイント
  • Excel2007を使用して、商品出荷とメルマガ配信の業務について、指定日のセルを赤く塗りつぶす方法を教えてください。
  • 商品出荷は毎月1, 10, 20日に行われ、メルマガ配信は毎月21, 25, 1日に行われます。
  • 条件付き書式を使用して月名や日にち・曜日を赤または青で表示し、祝日や週末も適切に色分けする方法を教えてください。
回答を見る
  • ベストアンサー

Excel2007毎月●日を指定(土日祭日除く)

●質問の主旨 A5セル(商品出荷)A6セル(メルマガ配信)の各業務について、 関数式や条件付き書式を使って当該の指定日のセルを赤く塗りつぶしたいと考えています。 どのようにエクセルの関数式や条件付き書式を記述すれば良いでしょうか? ご存知のかたご教示願います。 ●前提条件 ○業務上のルール 1.商品出荷→毎月1,10,20日(土日祝日が重なるときはその直前の営業日) 2.メルマガ配信→毎月21,25,1日(土日祝日が重なるときはその直後の営業日) ○条件付き書式 1.月名($C$2:$AG$2) →「=DAY(C2)<>1」 →文字の色を白色とし月の1日のところのみ月名が表示 2.日にち・曜日($C$3:$AG$4) →「=MATCH($C$3,祝日一覧,0)」「=COUNTIF(祝日一覧,C3)=1」「=WEEKDAY(C3)=1」「=WEEKDAY(C3)=7」 →セルの背景色を赤色・青色 →「祝日一覧」シートの祝日と日曜日はセル背景色を赤色、土曜日は青色 ○その他の条件 1.B2セル→「毎月1日」を手入力するが"yyyy年m月"形式で表示 2.添付のワークシートとは別のシートに「祝日一覧」のシートが 同じファイルに存在し、2012年の祝日の日にちが記載

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

  • ベストアンサー
  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

マクロなしでは、毎月1,10,20日や毎月21,25,1日の中で、土日祝日が重なるときはその直前の営業日を見つけるのが大変ですので、できれば、毎月1,10,20日(土日祝日が重なるときはその直前の営業日)等の一覧表を作ってから、その一覧表のB列に存在する年月日を条件付き書式とすることを、お勧めします。 毎月1,10,20日(土日祝日が重なるときはその直前の営業日)の一覧表は、以下の式をB2セルに入れて下にドラッグコピーすれば作れます。 A2セルから下にカレンダーとしての年月日があるとして、(A1セルはブランクとすること) =IF(IF(IF(OR(DAY(A2)=1,DAY(A2)=10,DAY(A2)=20,WEEKDAY(A2)=1,WEEKDAY(A2)=7,COUNTIF(祝日一覧,A2)=1),"ok","")="","",A2-1)="","",IF(IF(IF(OR(DAY(A1)=1,DAY(A1)=10,DAY(A1)=20,WEEKDAY(A1)=1,WEEKDAY(A1)=7,COUNTIF(祝日一覧,A1)=1),"ok","")="","",A1-1)="",IF(IF(OR(DAY(A2)=1,DAY(A2)=10,DAY(A2)=20,WEEKDAY(A2)=1,WEEKDAY(A2)=7,COUNTIF(祝日一覧,A2)=1),"ok","")="","",A2-1),"")) 毎月21,25,1日(土日祝日が重なるときはその直前の営業日)の一覧表は、以下の式をB2セルに入れて下にドラッグコピーすれば作れます。 A2セルから下にカレンダーとしての年月日があるとして、(A1セルはブランクとすること) =IF(IF(IF(OR(DAY(A2)=21,DAY(A2)=25,DAY(A2)=1,WEEKDAY(A2)=1,WEEKDAY(A2)=7,COUNTIF(祝日一覧,A2)=1),"ok","")="","",A2-1)="","",IF(IF(IF(OR(DAY(A1)=21,DAY(A1)=25,DAY(A1)=1,WEEKDAY(A1)=1,WEEKDAY(A1)=7,COUNTIF(祝日一覧,A1)=1),"ok","")="","",A1-1)="",IF(IF(OR(DAY(A2)=21,DAY(A2)=25,DAY(A2)=1,WEEKDAY(A2)=1,WEEKDAY(A2)=7,COUNTIF(祝日一覧,A2)=1),"ok","")="","",A2-1),""))

dradra33
質問者

お礼

aokii様 ご回答ありがとうございます。 ご丁寧な関数式を記述していただき 大変参考になります。 取り急ぎお礼申し上げます。

関連するQ&A

  • エクセルの祭日

    エクセルでカレンダーを作る場合、条件付き書式で土日のセルに色を付けるやり方は判るのですが、何月何日が祝日ということを判別して、色を付けることはできるのでしょうか? エクセルは2002のSP-2です。

  • 【Excel2010】出勤日のみ表示したい

    勤務時間管理表にて、現状、土日はweekday関数で翌出勤日が表示されるようにしてありますが、平日の祝日はそのセルに日付を手入力しています。祝日のある月はその作業が面倒でどうにかならないかと常々思っております。 休日&振替日一覧は作成してありますので、条件付き書式で土曜日は青文字、日曜日と休日は赤文字になるよう設定して会社休日が紛れ込んでいないか確認できるようにしてあります。 この一覧表を利用して出勤日のみを表示させる関数はありませんか?

  • 日曜、祭日をカウントする

    勤務表をweekday関数で月間カレンダーをsheet1に作成しております。 別のshee2に祭日を作成して、条件つき書式でsheet1に日曜・祭日は赤になるように設定しました。赤色をカウント(VBAで作成)しようしても、条件付き書式では、赤をカウントしません。セルを選択後、塗りつぶしたセルはカウントしますが。 祭日.日曜日の勤務時間合計を計算したいのです。 row1列に2009/4/1から2009/4/30まで入力 row2列に(=text(A1,"aaa")で曜日入力してます。 row3列に時間を入力しております。 column1行には担当者指名入力しています。 日曜祭日にはrow1で日曜。祭日は赤に塗りつぶします。 よろしくお願いします。 ※条件つき書式の塗りつぶしの色とセルの塗りつぶしは違うのでしょうか?回答いただいた自作のFunction関数を使用しました。

  • 日にちの色の変え方(Excel)

    Excelでカレンダーを作成しています。 曜日は関数を使って表示しています。 ------------------------------------------     B         C 1  2008/10/1  水「=WEEKDAY(B1)」 2  2008/10/1  木「=WEEKDAY(B2)」 ------------------------------------------ 曜日の色は、 「[赤][=1]aaa;[青][=7]aaa;aaa」で変更できるのですが、 日にち(2008/10/1)の色を変えることができません。 条件付書式を使用したのですが、 1つのセルずつ設定(C1="日"なら赤など)することしか 考え付きませんでした。1年間分すべて手入力することは厳しいので、 何か良い方法があったら教えてください。 何人かで共有するので、マクロはNGでお願いします。 もともとの書式(「=WEEKDAY(B1)」)は変更してもOKです。 よろしくお願いいたします。

  • Excel 条件付き書式 指定日以降 白抜き

    タテにメンバー氏名、ヨコに11日から翌月10日までの勤務表作成にて 開始日更新に合わせて翌月11日以降を日付/曜日とも、白抜きにしたいのですが? 表部分 : A3~AH9 【A+B列には氏名】 【日付表示行 C3~AH3 ユーザー定義書式 : d】 C3に 2017/1/11 D3に=C3+1 これをAHまでオートフィル 【曜日表示行 C4~AH4 ユーザー定義書式 : aaa】 C4に=C3 これをAHまでオートフィル ◆日付/曜日セル色づけ 条件付き書式 C3~AH4 祝日 : 数式 =COUNTIF(祝日,C$3)           ※別シートに「祝日」の日付を書き込んだデータ作成にて C3~AH4 日曜 : 数式 =WEEKDAY(C$3)=1 C3~AH4 土曜 : 数式 =WEEKDAY(C$3)=7 上記方法にて、C3に今月度の開始日を入れるとC3~AH4に 自動で日付と曜日の表示、色付けがされるようにしてあるのですが このC3更新に合わせて翌月11日以降が白抜きになる方法を教えてもらえませんか? ※添付画像の黒枠部分を月更新にて自動で白抜きにさせたいのですが? ・・・よろしくお願い致します。

  • 行を挿入すると、色が付いてしまう

    excel2013です。 画像のような感じのカレンダーを作っています。 セルには、条件式書式で、上から、 =COUNTIF(祝日!$A$2:$A$54,$A791)>=1 =WEEKDAY(A791)=1 =WEEKDAY(A791)=7 を入力して、日曜・祝日は、文字色赤、土曜日は、文字色青、背景はどれも薄い青にしました。 そこで質問です。 行を挿入すると、土日祝日以外でも、上記の曜日のように、色が付いてしまいます。 なぜこのようになるのでしょうか? また、解決するには、条件式書式をどのように変更するば良いのでしょうか?

  • 「OR関数」の使い方を教えてください。

    【Exel2003】 スケジュール表を作っています。 条件付き書式を使って、「日曜日」と「休日」のフォントの色を赤にしたいのですが、 条件として、「OR関数」で「日曜日」又は「祝日」を選択して、書式を設定したいと考えて  =OR(WEEKDAY($A1)=1,MATCH($A1,祝日,0))   A1=日付 祝日=一覧に名前を定義 と条件を設定したところ、「祝日」の書式は、設定できるのですが、「日曜日」の書式が設定できません。 =WEEKDAY($A1)=1 =MATCH($A1,祝日,0) と条件を別に設定すると、それぞれはうまくいくのですが 「OR関数」の使い方が間違っているのでしょうか教えてください。

  • Excelの関数について

    2行目に日付が入ったSheet1があり、土日には条件付き書式の設定で(WEEKDAY関数)色が付けてあります。 Sheet2には祝日が入力されていて範囲指定で「祝日」と名前が付けられています。 Sheet1の日付のセルに、祝日の場合には色をつけようと下記2通りの条件付き書式を試みましたが、どちらを使っても色付けされません。 =COUNTIF(祝日,C$2)>0 =MATCH(C$2,祝日,0)>0 考えられる原因と対処方法を教えていただけないでしょうか? 又、Sheet1だけコピーして別のブックに保存する場合、祝日の色付けをそのままにする方法はあるでしょうか? どうかよろしくお願いします。

  • 第一、第三、土曜日のセルに条件付書式設定で色を付けたいのですが、そのよ

    第一、第三、土曜日のセルに条件付書式設定で色を付けたいのですが、そのような関数はあるのでしょうか。 全ての土日に色を付けるのは =WEEKDAY(J4,1)を使っていますが、第三・四など、曜日を指定することはできるのでしょうか。 どなたか、よろしくお願いします。

  • エクセルでの条件付書式について質問です。

    下図のような帳票を数多く作成しています。 毎月、土日を塗りつぶすのが面倒で条件付書式を使用しています。 (以前、誰かが作成したシートを真似して作りました。) B4セルから横に日付が続きます。B5から横に=WEEKDAY(B4)でaaaで曜日を出します。 B6から下は入力欄ですが土日は塗りつぶします。 塗りつぶしの条件付書式は=WEEKDAY(B5,2)>5となっています。 =WEEKDAY(B5,2)>5の「,2」ってどういう意味でしょうか? WEEKDAY関数で日曜日が1、土曜日が7になるのはわかるのですが 「,2」だけが意味不明です。 「作れればいいじゃん」って思うかもしれませんが 妙に気持ちが悪くって・・・ すいませんがよろしくお願いします。

専門家に質問してみよう