- ベストアンサー
土曜日の営業についての質問
- 日曜日&祝日と隔週の土曜日を除く日に「営業」と表示するための数式について相談です。
- 現在は土日及び祝日を除く日は「営業」と表示することはできますが、すべての土曜日が「営業」と表示されてしまいます。
- 1週目の土曜日や3週目の土曜日も「営業」と表示したいので、該当する数式を教えていただきたいです。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
補足ありがとうございます。 条件付き書式 B6=OR(AND(MOD(CEILING(DAY(B4),7),14)=0,WEEKDAY(B4)=7),WEEKDAY(B4)=1,AG3="○") “営業”、“休日” B6=IF(OR(AND(MOD(CEILING(DAY(B4),7),14)=0,WEEKDAY(B4)=7),WEEKDAY(B4)=1,AG3="○"),"休日","営業") ※AG3="○" の部分は B3<>"" でも代替可能です。
その他の回答 (5)
- MackyNo1
- ベストアンサー率53% (1521/2850)
>置き換えの意味をわからずですが下記にその一例を示しましたがうまくゆきません。 =AND((ROUNDUP(DAY(B4)/7,0)=2,ROUNDUP(DAY(B4)/7,0)=4),WEEKDAY(B4)=7),WEEKDAY(B4)=1,AG3="○"),"","営業") 数式を置き換えると、以下のような関数になります(ただし休日は空白表示になります)。 =IF(OR(AND(OR(ROUNDUP(DAY(B4)/7,0)=2,ROUNDUP(DAY(B4)/7,0)=4),WEEKDAY(B4)=7),WEEKDAY(B4)=1,AG3="○"),"","営業")
お礼
再指導をいただきありがとうございます。 お陰様でうまくゆきました。 皆様のどれもよく迷っています。
- kagakusuki
- ベストアンサー率51% (2610/5101)
まず、前提として、B4~AF4にはシリアル値で日付データが入っているものとします。 その場合、B6セルの関数は次の様なものになります。 =IF(ISNUMBER(1/DAY(B$4)),IF(OR(WEEKDAY(B$4)=1,ISNUMBER(VLOOKUP(B$4,祭日,1,FALSE)),MOD(DAY(B$4)-1+WEEKDAY(DATE(YEAR(B$4),MONTH(B$4),1)),14)=0),"休日","営業"),"") 尚、本来であれば、 ISNUMBER(VLOOKUP(B$4,祭日,1,FALSE)) という部分は、COUNTIF関数を使用して、「祭日」というセル範囲の中の左端の列の中に、B4に入力されている値が存在しているのか否かを判定させた方が良いのですが、「祭日」というセル範囲の中の左端の列が、どの列になっているのかという事に関して、何も説明されていないため、やむなく ISNUMBER(VLOOKUP(B$4,祭日,1,FALSE)) などという面倒な判定方法としております。 次に、B5~AF5における休日の場合にセルとの色を変える条件付き書式の数式は次の様になります。 (B5セルを基準に設定する場合) =B$6="休日" 尚、上記の条件付書式を設定する際には、該当する条件付書式の「条件付書式ルールの管理」ダイアログボックスにおける「条件を満たす場合は停止」欄のチェックを外して下さい。 次に、B3~AF4における祭日の場合にセルと文字の色を変える条件付き書式の数式は次の様になります。 (B3セルを基準に設定する場合) =ISNUMBER(VLOOKUP(B$4,祭日,1,FALSE))
お礼
詳細なご指導いただき誠に有難うございました。 今度ともよろしくお願いいたします。
- MackyNo1
- ベストアンサー率53% (1521/2850)
>B6 =IF(OR(WEEKDAY(B4)=7,WEEKDAY(B4)=1,AG3="○"),"","営業") * ↑この数式ですと B6 は休日になります。 上記の数式では日曜日、または土曜日、またはAG3セルが「○」の場合は「空白」表示になりますが、「休日」の間違いでしょうか? ご質問の意味が、単純に第2、第4土曜日のみ休日と表示したいだけなら、数式の「WEEKDAY(B4)=7」の部分を条件付き書式の「AND(OR(ROUNDUP(DAY(B4)/7,0)=2,ROUNDUP(DAY(B4)/7,0)=4),WEEKDAY(B4)=7)」と置き換えるだけでよいと思います。
補足
私の知識不足をお許し下さい。 置き換えの意味をわからずですが 下記にその一例を示しましたがうまくゆきません。 =AND((ROUNDUP(DAY(B4)/7,0)=2,ROUNDUP(DAY(B4)/7,0)=4),WEEKDAY(B4)=7),WEEKDAY(B4)=1,AG3="○"),"","営業") お手数ですが再度ご指導いただけませんでしょうか。
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! 一案です。 前提条件として、↓の画像で F1セルの表示形式はユーザー定義から 0年度 として、2014という数値のみを入力 A3セルの表示形式もユーザー定義から 0月度 として、11(月の数値のみ)を入力しています。 ↓の画像でA1セル(実際は目障りにならないセル)に =DATE(F1,A3,0)-WEEKDAY(DATE(F1,A3,0)-5,3) という数式を入れるとA1セルが先月の最終土曜日になりますので、 これを利用する方法です。 このシリアル値に14をプラスしたのが第2土曜日・28をプラスしたのが第4土曜日となります。 画像ではB6セルに =IF(B4="","",IF(OR(B3<>"",WEEKDAY(B4)=1,B4=$A1+14,B4=$A1+28),"休日","営業")) という数式を入れ右方向にオートフィルでコピーしています。 これで第2・第4土曜以外の土曜日と祝日・日曜以外は「営業」となり、 他のセルは「休日」になると思います。m(_ _)m
お礼
TOM04様 お久しぶりです。 いつもご回答いただき誠に有難うございます。 試させていただいたところ本当にうまくできました。 重ね重ねありがとうございます。
- mshr1962
- ベストアンサー率39% (7417/18945)
確認事項 1.AG3="○"はどういう条件でしょうか? あとセルは固定?相対? 2.今回の条件だと、1日と15日が営業ということですが、第5週の29日は休日ですか?営業ですか? 3.隔週となってますが月によって、第2,4土曜日が“営業”対象の可能性はありますか? 4.第1,3土曜日と祭日がかぶった時は休日ですか? 上記によって、数式の作り方が変わるので補足してください。
補足
早速回答の御準備を頂きありがとうございます。 捕捉させていただきます。 1. AG3="○"はどういう条件でしょうか? あとセルは固定?相対? シート「祭日」 4列目は 祭日があるセルは”○” で今回の質問を考えるときに何かきっかけをつかみたく入れたものです。 =IF(ISNA(VLOOKUP(B2,祭日,4,FALSE)),"",VLOOKUP(B2,祭日,4,FALSE)) 2. 今回の条件だと、1日と15日が営業ということですが、第5週の29日は休日ですか?営業ですか? “営業”です 3.隔週となってますが月によって、第2,4土曜日が“営業”対象の可能性はありますか? 絶対にありません 4.第1,3土曜日と祭日がかぶった時は休日ですか? “休日”です
お礼
再指導いただき誠に有難うございました。 皆様にご指導いただき本当に幸せでした。 この数式が一番簡単にできたのがベストの決めになりました。