『土日祝の計算について』(ここ) 夜分に失礼します。 関数でこのような仕組みを考えていますが、どうしても進めず ここにたどり着きました。 すいませんが、ご教授お願いします。 やりたいこと  第一条件:毎月5日で"○"、それ以外は"×"  第二条件:上記が土日祝の場合、翌営業の日に"○"、それ以外は"×"  要は基本毎月5日に作業日として"○"が入る。  ただし、土日祝の場合は"×"となり、翌営業の日に"○"が入ることが希望です。 一応… =IF(AND(dd=5,dd=(WORKDAY(D2,1,設定!G8:G39))),"○","×") まで行ったのですが、全て×となり…。 <値説明> dd…日付での名前の定義 設定…祝日の一覧の名前の定義 D2…today関数 色々試行錯誤しているのですが、行き詰ってしまい。 このようなことはできますでしょうか? < 使用 Excel:Excel2010、使用 OS:Windows7 > ---- > dd…日付での名前の定義   これがどういうことなのかよくわかりませんので、 D2の日付が条件に一致していたら ○ ということにします。   =IF(WORKDAY(D2-DAY(D2)+4,1,設定!G8:G39)=D2,"○","×")    (JKT) 2015/06/10(水) 04:29 ---- JKTさん  こんな夜更けに回答ありがとうございます。 早速試し、動きました。大変助かりました。 あと、別件になってしまうかもしれませんが、ご存じであれば。 テストケースをいくつかやっていますが、今年日付はOKでした。 ただし、D2にある日付を翌年にした場合、「#VALUE」となってしまいます。 これはなぜなのでしょうか? まだまだ分かっておりませんで…。 (ここ) 2015/06/10(水) 05:36 ---- D2セルに入力されている値を示してみてくれ。 D2セルが日付と認識できない文字列だと結果が#VALUEとなる可能性がある。 (ねむねむ) 2015/06/10(水) 09:26 ---- ねむねむ様  こんにちは、返答遅くなり申し訳ございません。 確かにセルD2には数字ではなく、TODAY関数を入れていました。 ただし、値を仮に2016/1/5としても「#VALUE」となってしまいます。 「2015/12/31」までは問題なく"○"or"×"が表示されたのですが…。 EXCELは便利だけどなかなか難しいですね。 (ここ) 2015/06/13(土) 18:10 ---- TODAY関数は日付データを返してくれるので手で日付を入力したのと同じことになる。 もう一つ聞きたいのだが翌年の日付を入力した際、祝日リストの内容を変更したりしていないだろうか? (ねむねむ) 2015/06/13(土) 18:23 ---- ねむねむ様 > TODAY関数は日付データを返してくれるので手で日付を入力したのと同じことになる。 勉強になります。 関数のため、数字ではなく文字列と判断したのかと思っていました。 関数でも、その返す値を見るということなんでしょうか。 >もう一つ聞きたいのだが翌年の日付を入力した際、祝日リストの内容を変更したりしてい >ないだろうか? これについては、セルD2日付をみていますので そこが翌年になると祝日の一覧も更新されます。 祝日の一覧内に空白セルができるのがダメなんでしょうか? 例えばその年、国民の休日がなければ祝日の一覧の日付は空白になりますので。 いずれにしてもなぜか2015年以外は#VALUEとなってしまいますね。 なるべく作業漏れを減らす意味で日付から自動的にと思っていましたが こうなると手動が一番いいのかと…。 (ここ) 2015/06/14(日) 16:35 ---- >そこが翌年になると祝日の一覧も更新されます。 これはどのようにして更新されているのか? >祝日の一覧内に空白セルができるのがダメなんでしょうか? そのセルが空白セル(式も入っていない未入力セル)であれば問題ない。 もし、式で""になっていたり""のセルをコピーしてきた場合は空文字と言ってExcelは文字列と認識するため#VALUEエラーになるが。 (ねむねむ) 2015/06/15(月) 09:44