• ベストアンサー

エクセルで複数の以上~以下の範囲から検索

例えば 検査値が0.12として 0.1以上、0.19以下は "A" 0.2以上、0.29以下は "B" 0.3以上、0.39以下は "C" 0.4以上、0.49以下は "D" ・・・ と十数個の範囲と検索値があります。 IF関数を使うと、とても長い式になるので何か良い検索方法と関数を ご教授を頂けないでしょう。 よろしくお願いいたします。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.5

このケースなら以下のような配列定数を使用した(もちろんセル範囲でも対応できます)LOOKUP関数を使用するのが簡単です(検索値がC2セル)。 =LOOKUP(C2,{0.1,0.2,0.3,0.4},{"A","B","C","D"}) >ABC・・・のところを文字ではなく数式でもVLOOKUP関数は使えるのでしょうか? ”A"などの部分に、そのまま数式を入れれば(あるいは対応するセルに「=」から始まる数式を入力しておけば)文字列の場合と同様にLOOKUP関数を使用できます。

ntc023
質問者

お礼

出来ました! ありがとうございました。

その他の回答 (4)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

No.2です。 >ABC・・・のところを文字ではなく数式でもVLOOKUP関数は 使えるのでしょうか? とは前回アップした画像のF列のコトでしょうか? F列であれば数式で表示されているデータであっても 前回の数式そのままで大丈夫です。m(_ _)m

  • weboner
  • ベストアンサー率45% (111/244)
回答No.3

=CHOOSE((A1<0.2)+(A1<0.3)+(A1<0.4)+(A1<0.5),"D","C","B","A") とか =CHOOSE(INT(A1*10),"A","B","C","D") 0.1未満と05以上は出ないのかな?

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! すでにNo.1さんが的確な回答をされていらっしゃいますので、余計なお世話かもしれませんが、 VLOOKUP関数のTRUE型で対応できます。 ↓の画像のように別表を作成しておきます。 (E列は不要ですが、判りやすくするために表示しています) 画像ではB2セルに =IF(A2="","",VLOOKUP(A2,D$1:F$8,3,1)) という数式を入れフィルハンドルで下へコピーしています。m(_ _)m

ntc023
質問者

お礼

早速のご回答をありがとうございます。 ABC・・・のところを文字ではなく数式でもVLOOKUP関数は 使えるのでしょうか?

回答No.1

問題を、 0.1以上 0.2未満は A 0.2以上 0.3未満は B と読み替えると、VLOOKUP() という関数が使えます。 0.1 A 0.2 B 0.3 C 0.4 D 0.5 E という表を作っておき、VLOOKUP を使って、たとえば、 =VLOOKUP(C21,$C$8:$D$17,2,TRUE) (検査値の場所、表の範囲(コピーするときに便利なように、絶対位置で)、表の2列目のデータが答え、ちょうどのデータでない場合「以上・未満」の関係になる所のデータを使う) という感じ。 範囲表を 0.1 0.2 0.3 A B C と横方向に作るなら、HLOOKUP() が同じように使えます。

ntc023
質問者

お礼

早速のご回答をありがとうございます。 ABC・・・のところを文字ではなく数式でもVLOOKUP関数は 使えるのでしょうか?

関連するQ&A