• ベストアンサー

excel IF文について教えて頂きたいです

excelのIF文を用いセルO5に対して 0~0.5のとき0 0.5~2.0   1 2.0~5.0  10 5.0~  100 のような分類を行いたく =IF(0<O5,0,IF(0.5<O5,1,IF(2<O5,10,IF(5<O5,100,"")))) このような入力を行ったのですが上手くいきません。 間違いについてご指摘頂きたいです。 よろしくお願いします。

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

ご例示のIF文ですが、数値比較を昇順でするなら比較演算子が逆です。 又、階層条件が重複している。(例えば、0.5は0なのか1なのかが曖昧)  =IF(0.5>O5,0,IF(2>O5,1,IF(5>O5,10,100))) IF関数で3つ以上ネストする事はできるならばやめた方が良い(文法上メンテナンスが面倒)、 できればVLOOKUPやLOOKUP関数で対応した方がすっきりしますが如何でしょうか。 一例です。  0~0.5未満、0.5~2未満、2~5未満、5以上の条件です。 (1)=LOOKUP(O5,{0,0.5,2,5},{0,1,10,100}) (2)=VLOOKUP(O5,A1:B4,2,TRUE)    A1:0,B1:0    A2:0.5、B2:1    A3:2、B3:10    A4:5、B4:100   因みにA1:B4は昇順としておく必要があります。

moozooo
質問者

お礼

ご回答ありがとうございます。 勉強になりました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • hananoppo
  • ベストアンサー率46% (109/235)
回答No.3

トリッキーな方法ですが、論理式を使った次のような数式でもよいです。 =(O5>0.5)*10^(O5>2)*10^(O5>5)

moozooo
質問者

お礼

新たな方法についてご提案頂きありがとうございます。 参考にさせて頂きます。

全文を見る
すると、全ての回答が全文表示されます。
  • MARU4812
  • ベストアンサー率43% (196/452)
回答No.2

もともと閾値とイコールの時がどっちなのか質問文では不明だけど、 #1 さんの回答の > =IF(O5<0.5,0,IF(O5<2,1,IF(O5<5,10,IF(O5>5,100,"")))) だとちょうど5の時に抜けちゃうかも? まぁ、そのくらいは質問者が検証すべきだけどね。 全部含まないとすれば、例えば。。。 =IF(O5<=0,"",IF(O5<0.5,0,IF(O5<2,1,IF(O5<5,10,IF(O5>=5,100,""))))) とか? > 間違いについてご指摘頂きたいです。 関数を複数入れ子に使った時は、計算結果が値として 戻ってくる関数は中から考えるんだけど、この場合は TRUE、 FALSE で成り立つほうが実行されるという見方をしないと いけないです。 でないと、質問文の計算式でも、一番中のIF(5<O5,100,"") だけ見てしまうとそこで終わっちゃいますよね? IF は計算式では無いという理解でいいのかな。 ちょっと説明しようと思って、自分でも分かってない事に 気付いてしまいましたw IF は先頭からプログラムが入れ子になってるように実行される と考えた方がいいですね。 ヘルプに使用例が載ってるのでよく読んでみてください。

moozooo
質問者

お礼

わかりにくい説明で申し訳ございません。 参考になりました。 ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.1

=IF(O5<0.5,0,IF(O5<2,1,IF(O5<5,10,IF(O5>5,100,""))))

moozooo
質問者

お礼

ご回答ありがとうございました。 希望通り実行することができました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • excelのif文について

    excelのif文でうまくいかないことがあり御相談します。セルH4内にIF((B4-B3)=0,"","F4")という文章を組んで、セルB4とB3の値が等しい場合はブランクにして、等しくない場合はセルF4内の値を表示するようにしたいのですが、F4とそのまま表示されます(セルF4内部の値を表示したい)。何か間違っていると考えますが、それをご指摘いただきたいとお願いします。

  • ExcelでIF文などを使いこなしたいのですが・・

    Excelのセルの中にIF文などを埋め込んだりする処理を 何というのでしょうか? Excelをよく使うのですが、SUM関数などしか知らない為、 セルにIF文を埋め込む処理をもっと覚えたいと思うのですが どういう本を買えばいいのか分かりません・・。 Excelの関数の本でしょうか? Excelの関数の本については初歩的な本をもってるのですが、 関数ウィザード?を使ったものしか載ってなくて、 IF文などについては全く載っていません・・。 マクロ?とかいうものについて書かれた本を 買えばいいのでしょうか? それから、IF文等は、Excelだけではなく、Wordも使えるのでしょうか? 使えるとしたら、文法は全く一緒でいいのでしょうか?

  • EXCEL IF文の使い方で

    1~12月までの数値が入った横並びのセルがあります。 それと月度を入力したセルがあります。 そして、特定のセルに、指定した月度の数値を持ってくる式を入れたいのですが、単純にIF文のネストではだめですよね。何か良い関数はありますでしょうか? EXCEL2003です

  • エクセルのIF文

    IF文が簡単なものしか分からないレベルの者です。 以下の条件においてIF文を作成する場合、どのようにしたら良いでしょうか? 御教示願います。なおエクセルのバージョンはエクセル2000です。 (1)A~C列の十数行のセルには文字が並んでいる(たとえばAXY12341,FAC236等)。 (2)あるセル内(A~C列以外のセル)に入力した文字が、A列のセルにある文字と同じものがあれば、 あるセルの色は赤色になる。 (3)あるセル内(A~C列以外のセル)に入力した文字が、B列のセルにある文字と同じものがあれば、 あるセルの色は青色になる。 (4)あるセル内(A~C列以外のセル)に入力した文字が、C列のセルにある文字と同じものがあれば、あるセルの色は黄色になる。

  • EXCELのIF文について

    あるセルに文字が入力されていないときは、もうひとつのセルの数字を=で持ってきて、 入力されたときは0か空白にできるIF文の作り方ありますでしょうか?

  • エクセルのIF文

     エクセルの表で、セルに数字0が入っている場合は2、そうでなければ0と定義するのに、=IF(E$2=E5,E$3,0)という文を作ったのですが、セルが空欄でも2が返されてしまいます。  セルが空欄の場合は、0を返したいのですが、このIF文に何を補足すればよいでしょうか。

  • エクセル if文を乱用したら・・・

    教えてください タイトルどおりエクセルのif文をひとつのセル内で ifを15回ぐらい繰り返したところ(=if~、if~、if~、・・・・) 入力時のレスポンスがとても遅くなってしまいました。 内容としては 1を入力するとりんご 2を入力するとみかん・・・・など単純な物が15行ぐらい続くもので、 リストは別なシートにあります。 対処法などありましたら教えてください よろしくお願いします。

  • IF文

    M列に以下をペーストするとN列O列が空欄ときはM列のセルに何も表示されません。 同行のNとOに数値を入力してから削除すると「調査中」が表示されます。 最初からN列O列が空欄ときに「調査中」と表示する書式を教えて頂きたくお願いします。 =IF(N123<>"",N123,IF(O123<>"",O123,"調査中")) EXCEL2007です。

  • マクロのIF文について

    エクセルで、特定の列(可変)を文字が入っているところまで選択し、その中に空白セルがあれば入力を促すメッセージがでるように、マクロでIF文を組むにはどのようにすればよいですか?

  • IF文で空白セル

    勘違いしているのかもしれませんが、 エクセルの数式IF文で、TRUEの時に空白(?)を入力するにはどうしたらよいのでしょうか? 今までは、TRUEのところに "" とダブルクオーテーション二つを入力していたのですが、IF文が入っているセル(TRUE)をISBLANKで参照するとFALSEとなります。 ISBLANKで参照したときに、TRUEとするためには、IF文にどういう風に入力すればよいのでしょうか? うまく説明できませんが、ご教授お願いします。

専門家に質問してみよう