- ベストアンサー
エクセルOR関数の使い方とは?原因を解説
- エクセルのOR関数を使いたい場合、正しい書き方と原因を把握する必要があります。
- 質問者の場合、OR関数の書き方が間違っていることが原因です。
- 複数の条件に該当するものを抽出する方法は、他の関数を使用する必要があります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
(1)たとえば、1以上500以下:1<=A1<=500 ←ではうまく表現できていないのでしょうか? はい。 1以上500以下:and(1<=A1, A1<=500) です。 (2)また、上記「やりたいこと」のように、複数の条件に該当するものを抽出するには =IF(or(and(1<=A1, A1<=500), and(600<=A1, A1<=700), and(1100<=A1, A1<=1200)),B1,C1) です。
その他の回答 (2)
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! ご質問の内容だと OR関数とAND関数を併用する必要があると思います。 =IF(OR(A1<=500,AND(A1>=600,A1<=700),AND(A1>=1100,A1<=2000)),B1,C1) A列は1以上の整数が入るとして、 AND(A1>=1,A1<=500) の部分を A1<=500 としています。 こんな感じではどうでしょうか? ※ 仮に 600~700 の範囲の場合は 600<=A1<=700 という書き方ではなく AND(A1>=600,A1<=700) とするのが一般的だと思います。m(_ _)m
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
>=IF(OR(1<=A1<=500,600<=A1<=700,1100<=A1<=1200),B1,C1) に準じて数式を作成すると =IF(OR(AND(1<=A1,A1<=500),AND(600<=A1,A1<=700),AND(1100<=A1,A1<=1200)),B1,C1) 整数限定で =INDEX(B1:C1,2-MOD(MATCH(A1,{1,501,600,701,1100,2001}),2)) 空白処理が必要なら =IF(A1="","",数式)とします
お礼
回答ありがとうございます。 助かります。 なるほど、OR関数だけで、1以上500以下を識別させること自体が無理ということですね。 正解関数まで、教えていただきましてありがとうございます。 整数限定で~以降は、後日考えてみます。 丁寧にありがとうございました。 同内容の返答をいただきましたため、早くに返答してくださった回答者様にBAとさせていただきます。 本当に助かりました。ありがとうございます。
お礼
回答ありがとうございます。 助かります。 なるほど、OR関数だけで、1以上500以下を識別させること自体が無理ということですね。 正解関数まで、教えていただきましてありがとうございます。 同内容の返答をいただきましたため、早くに返答してくださった回答者様にBAとさせていただきます。 本当に助かりました。ありがとうございます。