• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル関数で複数条件の計算式の入れ方)

エクセル関数で複数条件の計算式の入れ方

このQ&Aのポイント
  • エクセル関数を使用して複数条件の計算式を入力する方法について教えてください。
  • A1とB1に数字が入力されている場合、条件に応じて計算式を実行します。
  • 条件1:A1またはB1がゼロ以下の場合、'-'を返します。

質問者が選んだベストアンサー

  • ベストアンサー
  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.4

ごめ。前のは間違い。 =IF(OR(A1<=0,B1<=0),IF(AND(A1<0,B1<0),A1/B1,"-"),B1/A1) これでいいはず。要は (1条件は2条件を含む) (2条件が成立すると1条件は成立しない) (1条件が成立しないものは全て3条件に該当) と、ということですよね。

mohanamo
質問者

お礼

お礼が遅くなりまして申し訳ありません。 今やってみたらできました!! わかりづらい説明を御理解下さって感謝です! 本当にどうもありがとうございました!!!

その他の回答 (6)

回答No.7

論理定義が正しくないものをいくら検証しようとしてもそれは無理! 想定外の結果は、論理宣言に矛盾があることを示している。 どんなに長々とオブラートに包んだ御託並べてもそれも無理!! それでも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)) あなたがやりたかったことは、これではなかったか??

mohanamo
質問者

お礼

お礼が遅くなりまして申し訳ありません。 わかりづらい質問ですみませんでした。 でも、他の方の回答でできました。 ご回答どうもありがとうございました。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.6

 こんな方法もあります。 =IF(COUNT(A1,B1),INDEX({"B/A","-","A/B"},(A1<0)+(B1<0)+1),"")

mohanamo
質問者

お礼

お礼が遅くなりまして申し訳ありません。 あの、INDEXというのは…? この通り入れてみたらできませんでした。 でも、どうもありがとうございました!

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.5

ご相談に書かれた事を整理すると =IF(A1*B1<=0,"-",IF(A1<0,A1/B1,B1/A1)) といった具合でいいことが判ります。

mohanamo
質問者

お礼

お礼が遅くなりまして申し訳ありません。 できました! いろいろなやり方があるんですね! 本当にどうもありがとうございました!!

回答No.3

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 |   |    |   | -----+-----+-----+-----+

mohanamo
質問者

お礼

お礼が遅くなりまして申し訳ありません。 できました! 合否判定の表もとても役立ちそうですね! 本当にどうもありがとうございました!!

  • P5Q
  • ベストアンサー率40% (86/210)
回答No.2

=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)) こうですね。

mohanamo
質問者

お礼

お礼が遅くなりまして申し訳ありません。 今やってみました。できました!! 本当にどうもありがとうございました!!

  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.1

カッコイイやり方は他にもあると思いますが、これでオッケーなんじゃ? =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),"-")