• ベストアンサー

エクセル関数における対応する範囲

例えば"356"という値について、表から300以上320未満に該当するときは"A"という値、320以上335未満は"B"、335以上360未満は"C"という値を引っ張ってくるにはどのような関数を使えばいいのでしょうか。上記で示した範囲の段階が多くその範囲の間隔が一定ではないので困っています。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

A1に356として IF文関数なら(7つまでネストできます。) =IF(A1<300,"",IF(A1<320,"A",IF(A1<335,"B",IF(A1<360,"C","")))) MATCH関数なら =CHOOSE(MATCH(A1,{-999,300,320,335,360},1),"","A","B","C","") VLOOKUP関数なら -999 スペース 300 A 320 B 335 C 360 スペース 999 スペース という範囲を用意(スペースの部分は半角でスペース) =VLOOKUP(A1,表の範囲(絶対参照),2,TRUE)

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

その他の回答 (4)

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

値の下限が書いてないですが0とすれば また空白があれば、A1に =IF(A1="","",VLOOKUP(A1,$D$1:$E$5,2,TRUE)) を入れて下方向に複写。 D1:E5には 0 X 300 A 320 B 335 C 360 D と入れます。 小数値でもかまいません。 (注意点) (1)第4引き数はTRUE型にする。 (2)表の範囲を示す$D$1:$E$5は絶対参照にすること。 (3)コードA,・・は値区分より右列に持ってくること。

全文を見る
すると、全ての回答が全文表示されます。
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.4

こんにちは。maruru01です。 A1にデータがあるとして、 別の場所に表を作成せずに、LOOKUP系関数を使用する場合は、 =HLOOKUP(A1,{300,320,335,360;"A","B","C","D"},2) =VLOOKUP(A1,{300,"A";320,"B";335,"C";360,"D"},2) などと出来ます。 さらに、表示値が「A、B、C・・・」とアルファベット順になっているのなら、 =CHAR(MATCH(C1,{300,320,335,360})+64) などという方法もあります。 さらに、表示値が1文字なら、 =MID("ABCD",MATCH(C1,{300,320,335,360}),1) という方法もあります。 今後、範囲を変更する可能性を考慮して、メンテナンス性からも、どこかに対応表を作成しておいて、VLOOKUP関数を使用するのがいいと思います。

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

こんにちは。 IF()関数でやると長くなるがこんな感じになりました。 =IF(AND(A1>=300,A1<320),"A",IF(AND(A1>=320,A1<335),"B",IF(AND(A1>=335,A1<360),"C",))) grumpy_the_dwarfさんのvlookup()関数を使う方法もあるのですね。 とても勉強になりました。

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

vlookup()関数を、最後のパラメータがTRUEで使います。この条件では 300 A 320 B 335 C 360 D という表で310を検索するとAにマッチさせられます。ヘルプに実例が 書いてありますので、参照してください。

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

関連するQ&A

  • excel関数を用いてある行の範囲内の数値のみを違う行に抽出し、同じ列に対応する値も引っ張ってくることは可能ですか?

        A   B   C   D 1   33   180 2   58   300 3   89   310 4   152   240 5   205   74 上のような表になっている時に、EXCEL関数を用いて、[A]行の「60以上、180以下の数値」のみをC列に引っ張ってきて、なおかつ[A]行のそれぞれの値に対応する[B]行の値をD行に引っ張ってくることは可能でしょうか? 理想的な結果として   A     B      C      D 1   33  180     58    300 2   58   300    89    310 3   89   310    152    240 4   152   240 5  205  74 というようになってほしいのです。 オートフィルターの範囲指定を用いると、C行に範囲内の値を引っ張ってくる事は出来たのですが、関数ではない為、他の表に応用が効かず、毎回フィルターをかけなくてはいけなかったです…そのため出来れば関数を使いたいのですが、何か方法は無いものでしょうか…

  • エクセル関数について

    セルA×B=C Cの答えが1未満ならI、1以上2未満ならII、2以上はIIIと セルDに値を返したいときどのような関数を使えばよいでしょうか?

  • エクセル関数教えて下さい。

    該当する関数があればご指南下さい。   A  B  C  D 1 20  1  =A1*B1 2 30 3 40 4 50 5       =SUM(C1:C4) 上記の様な時にD1にC5の値が20だったら1を30だったら2を… といった形にしたいのですがお願いします。 初心者です…。              

  • エクセルの関数について

    教えてください!! 検索データ範囲内から 1.(例)AまたはBまたはCが2つ以上ある場合だけにエラー表示(できれば色着きで該当列を表示)する関数。 2.該当範囲にAまたはBのみであればそのまま表示し、AとB両方あればABと表示する関数。 うまく説明できてないかもしれませんが・・・よろしくお願いします。

  • エクセルのif関数で8つ以上ある場合について教えて下さい。

    エクセルのif関数で8つ以上ある場合について教えて下さい。 バージョン:エクセル2002 以下のような場合       1,000未満 → A 1,000以上 1,500未満 → B 1,500以上 2,000未満 → C 2,000以上 2,500未満 → D 2,500以上 3,000未満 → E 3,000以上 3,500未満 → F 3,500以上 4,000未満 → G 4,000以上 4,500未満 → H 4,500以上 5,000未満 → I 5,000以上       → J 現在のエクセルバージョンでは、 if関数の7レベルを超えてしまい、Lookup関数では一致した値しか拾ってくれません。 このような場合、以上、未満などの比較演算子を使用した範囲内の数値の分岐結果を取得するには どのようにすればよいのでしょうか? 現在は、次のように表を作成して行っております。     A     B   C  ←セル列  1        1,000  A  2  1,000   1,500  B  3  1,500   2,000  C  4  2,000   2,500  D  5  2,500   3,000  E  6  3,000   3,500  F  7  3,500   4,000  G  8  4,000   4,500  H  9  4,500   5,000  I  10  5,000        J  ↑ セル行 別の関数などを使用してできる場合(VBA不可)などでも構いませんので、 どなたかご教授願います。 宜しくお願いします。

  • エクセルの関数で条件を組み立てる

    1から6までの範囲の値には、Aという表示 それ未満には、Bという表示を出す関数を だすには、どの関数をつかえばいいですか?

  • エクセル関数=IF(AND())で質問します。

     初めまして、よろしくお願いします。 エクセルで     A    B    C    D    E    F 1   1   10   5   3    4  2            ・ 3            ・ このような表にB1、C1、D1三つの値の内一つでもE1より2倍以上の値がある場合にA1の値を抜き出す関数をF1に入力したいのですが、関数式 =IF(AND((B1)>=E1*2),A1,"") までは解るのですが、B1のみではなく、B1からD1までの範囲をどのようにすればいいのか解りません。  解る方、よろしくお願いします。

  • エクセル関数式

    エクセルの関数式で質問です。 A列 B列 C列 1 100 200 kuruma 2 200 300 densha 同じ行の中で、A列以上、B列未満に該当していれば、C列を 出力するという関数式ってわかりますか? 例えば"150"という数字があるとすると、100以上200未満なので 結果が"kuruma"という感じです。

  • エクセル関数の質問

    ただ今会社で、警備の価格表をエクセルで作っているのですが、 関数についての質問です。 B(勤務時間)-A(勤務時間)が4時間未満だったらC(残業代)がゼロ。4時間以上6時間未満だったら、Cに4時間を超える数字が表れる。又、B-Aが9時間を超えるようだったら、Cに9時間を超える数字が表れるような関数の表を作りたいのですが。。解りにくくて申し訳ないですが、お答え宜しくお願い致します。

  • エクセル関数について

    こんばんわ。エクセルの関数について質問させていただきます。今仕事で依頼され、エクセルで表を作成しています。その表にa,A,b,Bのいずれかを入力していきます。最終的にそのa,A,b,Bがそれぞれいくつあるのか集計することになっています。そのとき使用する関数はなんでしょうか?COUNT関数かと思ったのですが上手くいかず。。。。私がすると、a(スモールa)とA(ラージA)の区別がつかなかったり、エラーになってしまったりします。どうしたらよいのでしょうか。 2点目の質問ですが、上記で述べた表に数値を入力していく列もあります。それをたとえば1~3未満はいくつあるのか、3~5未満はいくらあるのか集計できる関数はあるのでしょうか? ご存知の方教えてください。よろしくお願いします。

ケータイからプリントしたい!
このQ&Aのポイント
  • Wi-Fi環境がないところでもケータイからプリントしたい!
  • アイファン14プロとの接続の仕方がわからない…
  • 関連するソフト・アプリがない…どうすればプリントできる?
回答を見る

専門家に質問してみよう