- ベストアンサー
不等号をセルで参照し、計算する方法
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんな風にすればどうですか? =Eval(B2&B4&B1) ただしそのブックの標準モジュールに Function Eval(ByVal expr As String) Eval = Evaluate(expr) End Function と書いておきます。
その他の回答 (3)
- bunjii
- ベストアンサー率43% (3589/8249)
>この時、やりたいこととしては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%")
お礼
説明不足で申し訳ございません。 上の捕捉に書かせていただいたのですが、 >> =75%<85%という式を完成させたいのが目的です。 >> 式の返りはTRUEで返ると思います。 と、TRUEで返るのは承知の上です。 なので、文字列としてではなく式として組むにはにはどうすればよいかという質問でした。 (文字列であれば最初に書いてある質問文のようにB2&B4&B1をbunji様の回答のように組み替えれば良いのも承知しております。) 紛らわしくて申し訳ございません。 ご回答ありがとうございました。
- chachaboxx
- ベストアンサー率23% (412/1777)
追伸です。 まだよくわかっていませんが、そもそも求めている結果がTRUE以外になることがあるのでしょうか?
お礼
>> =B2<B1と書けば目的を達成できますが、 と私は書きました。 ということは私はTRUEになるのもわかっていますし、 そうなる様に結果を出したいのもわかるはずです。 逆に聞きますが、TRUE以外の回答を望んでいる質問でしたでしょうか? 全くそれ以外のことは触れてもいませんし、書いてもいません。 質問通りに読んで、B1、B2,B4を使用して返りがTRUEになる様にできる考えをお答えいただけますと幸いです。
- chachaboxx
- ベストアンサー率23% (412/1777)
=B1*100&"%"&IF(MAX(B1:B2)=B1,">","<")&B2*100&"%" こういうことですか? いまいち目的がわかってません。
補足
質問の仕方が悪かったですね・・・すいません。 B1,B2,B4というセル番地を用いて、 =75%<85%という式を完成させたいのが目的です。 式の返りはTRUEで返ると思います。 もう少し説明すると、 =B2<B1と書けば目的を達成できますが、 演算子を適時変える必要があるので、B4(<)のセル番地を使用したいです。 なのでB1,B2,B4のセル番地を使用して、 =75%<85%とするにはどのようすればいいでしょうか。 という質問です。 恐れ入りますよろしくお願いいたします。
お礼
これですね!ありがとうございます! Evaluateというのが()の中身を値ではなく式として認識させる役割をしているのですね・・・。 勉強になりました! ありがとうございました!