• ベストアンサー

エクセルの関数式に関してお願いします

エクセルの関数式で A<Bの時B-Aの値、A>Bの時A-Bの値を返す式はどのようにしたら 良いのでしょうか? IF(AND(A<B),B-A,A-B) と入れたのですが、どうもうまくいきません。 よろしくお願いします。

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

  • ベストアンサー
  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.1

IF(A<B,B-A,A-B)で、如何でしょう。 「A<B」以外は、すべて「B>=A」、従って「A-B」だと考えました。

turq
質問者

お礼

ご回答ありがとうございます。 その式でできました。 複雑に考えすぎていました。助かりました。

その他の回答 (5)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.6

何で複雑にANDなんか使うのかな。 =AND(x、Y)はx、yと条件が2つ以上必要だよ。 質問の式は1つしかない。 もともと条件は1つで良い。 2より大で10より小などがANDの使い途。 =AND(A>",A<10) これでTRUEかFALSEかが出る。 それをTRUEかFALSEかを聞く関数がIF関数。 結果は最簡単な場合で2つ(この質問ではBーAとA-Bの2つ)。それと条件と勘違いしていると思う。

turq
質問者

お礼

ご回答ありがとうございます。 全くもってそのとおりです。 勘違いでした。 一つの事にとらわれてしまうと、どうしても発想の切り替えがうまくいかず、 泥沼にはまってしまいます。 アドバイスありがとうございました。基本的なことを思い出させて頂いて 助かりました。

noname#77517
noname#77517
回答No.5

IFを使う場合、ABSを使う場合は、それぞれ回答が得られているので、 なぜうまくいかないかの説明を...。 AND式は、2つの条件を満足するかどうかの判定式になるので、 AND(A<B) では、パラメーター不足でエラーになります。 例えば、A<B かつ C<D を判定したい場合に AND(A<B, C<D) と なり、両方の条件を満たす場合に 1、どちらか満たさない場合に 0と なります。もちろん、IF式の中にも使えますが、この場合は必要ないと いうことになります。

turq
質問者

お礼

ご回答ありがとうございます。 全くもってそのとおりですね。 ANDが頭から離れず、もっとシンプルに考えればよかったと思います。 大変参考になりました。

  • xs200
  • ベストアンサー率47% (559/1173)
回答No.4

式を入れないで再投稿してしてしまいました。 abs(a1-b1) です。

turq
質問者

お礼

ご回答ありがとうございます。 どうもその式ですと値がでません。 わざわざありがとうございます。

  • xs200
  • ベストアンサー率47% (559/1173)
回答No.3

#2です。 間違えました。忘れてください。

  • xs200
  • ベストアンサー率47% (559/1173)
回答No.2

abs(a-b)

関連するQ&A

専門家に質問してみよう