- ベストアンサー
エクセル関数で複数条件の計算式の入れ方
- エクセル関数を使用して複数条件の計算式を入力する方法について教えてください。
- A1とB1に数字が入力されている場合、条件に応じて計算式を実行します。
- 条件1:A1またはB1がゼロ以下の場合、'-'を返します。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
ごめ。前のは間違い。 =IF(OR(A1<=0,B1<=0),IF(AND(A1<0,B1<0),A1/B1,"-"),B1/A1) これでいいはず。要は (1条件は2条件を含む) (2条件が成立すると1条件は成立しない) (1条件が成立しないものは全て3条件に該当) と、ということですよね。
その他の回答 (6)
- K Kazz(@JazzCorp)
- ベストアンサー率31% (549/1751)
論理定義が正しくないものをいくら検証しようとしてもそれは無理! 想定外の結果は、論理宣言に矛盾があることを示している。 どんなに長々とオブラートに包んだ御託並べてもそれも無理!! それでもQのオカシサに気付かない振りするのは、余程イヤラシイ!! あなたの宣言文で確かなことは、A、Bともに+のときはB/Aにしたい、これだけ!!、後は2重定義になっている。 論理矛盾からの脱出方法、 A、Bどちらも-のとき:- A、Bの一方が-のとき:A/B 0デバイドを避けるためには、0を+側に入れるべき。 C1: =IF(AND(A1>0,B1>0),B1/A1,IF(A1*B1>=0,"-",A1/B1)) あなたがやりたかったことは、これではなかったか??
お礼
お礼が遅くなりまして申し訳ありません。 わかりづらい質問ですみませんでした。 でも、他の方の回答でできました。 ご回答どうもありがとうございました。
- kagakusuki
- ベストアンサー率51% (2610/5101)
こんな方法もあります。 =IF(COUNT(A1,B1),INDEX({"B/A","-","A/B"},(A1<0)+(B1<0)+1),"")
お礼
お礼が遅くなりまして申し訳ありません。 あの、INDEXというのは…? この通り入れてみたらできませんでした。 でも、どうもありがとうございました!
- keithin
- ベストアンサー率66% (5278/7941)
ご相談に書かれた事を整理すると =IF(A1*B1<=0,"-",IF(A1<0,A1/B1,B1/A1)) といった具合でいいことが判ります。
お礼
お礼が遅くなりまして申し訳ありません。 できました! いろいろなやり方があるんですね! 本当にどうもありがとうございました!!
- chie65536(@chie65535)
- ベストアンサー率44% (8740/19838)
1~3をまとめると、 もしA1<=0ならば もしB1<0ならば、A1/B1 さもなくば、"-" さもなくば もしB1<=0ならば、"-" さもなくば、B1/A1 となります。 =IF(A1<=0,IF(B1<0,A1/B1,"-"),IF(B1<=0,"-",B1.A1)) 検証する場合は、以下のような表を作って、表に合否判定を書き込みましょう。 |A1<0|A1=0|A1>0| -----+-----+-----+-----+ B1<0 | | | | -----+-----+-----+-----+ B1=0 | | | | -----+-----+-----+-----+ B1>0 | | | | -----+-----+-----+-----+
お礼
お礼が遅くなりまして申し訳ありません。 できました! 合否判定の表もとても役立ちそうですね! 本当にどうもありがとうございました!!
- P5Q
- ベストアンサー率40% (86/210)
=IF(OR(A1<=0,B1<=0),"-",IF(AND(A1<0,B1<0),A1/B1,B1/A1)) ではなく、 =IF(AND(A1<0,B1<0),A1/B1,IF(OR(A1<=0,B1<=0),"-",B1/A1)) こうですね。
お礼
お礼が遅くなりまして申し訳ありません。 今やってみました。できました!! 本当にどうもありがとうございました!!
- FEX2053
- ベストアンサー率37% (7991/21371)
カッコイイやり方は他にもあると思いますが、これでオッケーなんじゃ? =IF(AND(A1>0,B1>0),"-",IF(AND(A1<0,B1<0),A1/B1,B1/A1)) 単純に1.条件の「ORをANDに読み替えた」だけです。 まあ、素直に↓のような書き方もありそうですが・・・。 =IF(OR(A1<=0,B1<=0),IF(AND(A1<0,B1<0),A1/B1,B1/A1),"-")
お礼
お礼が遅くなりまして申し訳ありません。 今やってみたらできました!! わかりづらい説明を御理解下さって感謝です! 本当にどうもありがとうございました!!!