電子書籍の厳選無料作品が豊富!

初歩的な質問ですみません。
添付の画像例でB列の日付からC列が6か月超、D列が9か月超のいずれかが当てはまる場合、E列(処理判定)に”不備”と表示をさせたいです。
E列にどのような関数式を関数式を入れたらよいでしょうか。

「Excelで2つの条件のうちどちらかにあ」の質問画像

A 回答 (5件)

tatsumaru77さんも指摘しておられますが、まず、6か月以内の定義を明確にしないと、正しい回答は得られないと思います。



常識的な判断では
(1)6か月以内⇒起算日の6か月後の応当日を含む(応当日当日までが条件に合致)
(2)6か月未満⇒起算日の6か月後の応当日を含まない(応当日の前日までが条件に合致)
(3)6か月以上⇒起算日の6か月後の応当日を含む(応当日当日からが条件に合致)
(4)6か月超⇒起算日の6か月後の応当日を含まない(応当日の翌日からが条件に合致)

従って、tatsumaru77さんがお示しになった、2022/1/1が購入日の場合、点検日が、2022/6/30はOK、2022/7/1もOK、2022/7/2は不備
となるのが、上記の判断ということになります。
だとすると、この問題の結果を導く関数としてDATEDIFを使うのは無理がある気がします。

DATEDIF関数だと、DATEDIF(日付1,日付2,"m")とした場合、5か月以上6か月未満は全て5が返り、6か月以上7か月未満は全て6が返るため、応当日当日を含めて「〇か月以内」を判別することができないからです。

そこで、gaotianさんの回答にあるように、EDATE関数を使います。添付画像をご覧ください。
購入日の6か月後の応当日、9か月後の応当日を計算し、点検日、修理日が各々その日付を超えていないかをチェックします。

E2セルに、

=IF(((C2>EDATE(B2,6))+(D2>EDATE(B2,9))),"不備","")

という数式を記述し、下方向へコピーしています。

これで、5行目の□□号は点検日が6か月後の応当日、修理日が9か月後の応当日なので、「ぎりぎりセーフ」ということになります。
「Excelで2つの条件のうちどちらかにあ」の回答画像5
    • good
    • 0

次のようになるかと思います。



[E2]=IF(C2>=EDATE(B2,6),"不備",IF(D2>=EDATE(B2,9),"不備",""))
[E3]=IF(C3>=EDATE(B3,6),"不備",IF(D3>=EDATE(B3,9),"不備",""))
[E4]=IF(C4>=EDATE(B4,6),"不備",IF(D4>=EDATE(B4,9),"不備",""))
    • good
    • 0

一点、気になったのですが、


2022/1/1が購入日の場合、点検日(6か月以内)で不備になるのはどのケースでしょうか。
ケース①
2022/6/30 OK
2022/7/1  不備

ケース②
2022/7/31 OK
2022/8/1  不備

ケース①を採用するならNo1の回答が正しいです。
ケース②を採用するならNo2の回答が正しいです。
    • good
    • 0

添付図参照(Excel 2019)


老婆心ながら、若干補足をば(*^_^*)
セル C1、D1 にはそれぞれ下記のユーザー定義書式を設定して。それぞれ数値 6、9 を入力しています、ハイ。
C1: "点検日("G/標準"か月以内)"
D1: "修理日("G/標準"か月以内)"
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄↓↓↓↓↓↓↓↓↓↓↓↓↓
「Excelで2つの条件のうちどちらかにあ」の回答画像2
    • good
    • 0
この回答へのお礼

ご丁寧なご回答ありがとうございます。助かりました!

お礼日時:2023/01/20 09:48

E2へ


=IF(OR(DATEDIF(B2,C2,"M")>5,DATEDIF(B2,D2,"M")>8),"不備","")
と入力し、オートフィルで下へコピーしてください。
    • good
    • 0
この回答へのお礼

ありがとうございます。大変助かりました!

お礼日時:2023/01/20 09:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!