• ベストアンサー

不等号をセルで参照し、計算する方法

お世話になります。 Excelについて質問です。 画像の通り、今B1に比較したい数値、B2に対象の数値、B4に不等号が書いてあります。 この時、やりたいこととしては75%<80%となる様に式を組みたいのですがどのようにすればいいのでしょうか。 =B2&B4&B1とするとくっつくだけですし、不等号のセルをダブルクォーテーションで括るとB4と出るだけになってしまいます。 恐れ入りますが、わかる方ご回答をお願いいたします。

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

  • ベストアンサー
  • f272
  • ベストアンサー率46% (8477/18147)
回答No.2

こんな風にすればどうですか? =Eval(B2&B4&B1) ただしそのブックの標準モジュールに Function Eval(ByVal expr As String) Eval = Evaluate(expr) End Function と書いておきます。

9634649
質問者

お礼

これですね!ありがとうございます! Evaluateというのが()の中身を値ではなく式として認識させる役割をしているのですね・・・。 勉強になりました! ありがとうございました!

その他の回答 (3)

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.4

>この時、やりたいこととしては75%<80%となる様に式を組みたいのですがどのようにすればいいのでしょうか。 =B2<B1 → 75%<80% → 0.75<0.8 → TRUE 「75%<80%」は「0.75<0.8」と等価です。 不等号の計算結果はTRUEまたはFALSEですが数値化すると1または0です。 どのセルへどのような結果を望んでいますか? B5セルに文字列として"75%<80%"と表示するときは次の数式で良いでしょう。 =TEXT(B2,"0%")&B4&TEXT(B1,"0%")

9634649
質問者

お礼

説明不足で申し訳ございません。 上の捕捉に書かせていただいたのですが、 >> =75%<85%という式を完成させたいのが目的です。 >> 式の返りはTRUEで返ると思います。 と、TRUEで返るのは承知の上です。 なので、文字列としてではなく式として組むにはにはどうすればよいかという質問でした。 (文字列であれば最初に書いてある質問文のようにB2&B4&B1をbunji様の回答のように組み替えれば良いのも承知しております。) 紛らわしくて申し訳ございません。 ご回答ありがとうございました。

  • chachaboxx
  • ベストアンサー率23% (412/1777)
回答No.3

追伸です。 まだよくわかっていませんが、そもそも求めている結果がTRUE以外になることがあるのでしょうか?

9634649
質問者

お礼

>> =B2<B1と書けば目的を達成できますが、 と私は書きました。 ということは私はTRUEになるのもわかっていますし、 そうなる様に結果を出したいのもわかるはずです。 逆に聞きますが、TRUE以外の回答を望んでいる質問でしたでしょうか? 全くそれ以外のことは触れてもいませんし、書いてもいません。 質問通りに読んで、B1、B2,B4を使用して返りがTRUEになる様にできる考えをお答えいただけますと幸いです。

  • chachaboxx
  • ベストアンサー率23% (412/1777)
回答No.1

=B1*100&"%"&IF(MAX(B1:B2)=B1,">","<")&B2*100&"%" こういうことですか? いまいち目的がわかってません。

9634649
質問者

補足

質問の仕方が悪かったですね・・・すいません。 B1,B2,B4というセル番地を用いて、 =75%<85%という式を完成させたいのが目的です。 式の返りはTRUEで返ると思います。 もう少し説明すると、 =B2<B1と書けば目的を達成できますが、 演算子を適時変える必要があるので、B4(<)のセル番地を使用したいです。 なのでB1,B2,B4のセル番地を使用して、 =75%<85%とするにはどのようすればいいでしょうか。 という質問です。 恐れ入りますよろしくお願いいたします。

関連するQ&A