• ベストアンサー

エクセル ある数値の範囲に当てはまる数字の表示

すみません、大変困っています。 エクセルの計算式について困っています。 是非、ご教授ください!!会社の人に聞いても解決できませんでした。 内容は・・・ A1のセルに、ある数字入力した場合、 A2のセルに下記の(1)~(4)の数字当てはまる数字を表示させたいのです。 (1)1と入力したら1と表示 (2)2から500の数字を入力したら2と表示 (3)500から300000の数字を入力したら3と表示 (4)300001以上の場合は4と表示 ポイント ・A1に入る数字は、1~300001以上になる為、VLOOKは使えません。(エクセルの表が6万5千までしかありませんでした) ・IF関数でいけるか?と思いましたが、やり方がわからず挫折してしまいました。 パソコンの本を調べましたが調べ方が悪いのか・・・どうしてもやり方が分かりませんでした。 どなたか詳しい方、教えてください。 なお、当方は、初心者なので、分かりやすく教えていただけると、嬉しいです。 以上、宜しくお願いします。

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

  • ベストアンサー
noname#99913
noname#99913
回答No.2

=IF(A1=1,1,"")&IF(AND(2<=A1,A1<=500),2,"")&IF(AND(501<=A1,A1<=300000),3,"")&IF(300001<=A1,4,"")  すみません。ちょっと間違いました。

tokeida
質問者

お礼

早速のご説明、ありがとうございました。 スッキリしました。

その他の回答 (5)

  • pie-suke
  • ベストアンサー率39% (112/281)
回答No.6

私も初心者に産毛が生えた程度ですが =IF(A1<1,"",IF(A1=1,1,IF(A1<501,2,IF(A1<300001,3,4)))) というのは駄目でしょうか。 もしA1が「1」以下なら空白を示し 上記以外で、もしA1が「1」ならば「1」を示し 上記の2つ以外で、もしA1が「501」未満なら「2」を示し 上記の3つ以外で、もしA1が「300001」未満なら「3」を示し それ以外なら「4」を示しなさい。 ということです。

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

IF関数の繰り返しでいけると思います。 質問では500が重複していますので (3)を501~300000として数式をA2セルに入れる場合は =IF(A1=1,1,IF(A1<=500,2,IF(A1<=300000,3,4))) で大丈夫だと思います・・・

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.4

>・A1に入る数字は、1~300001以上になる為、VLOOKは使えません。(エクセルの表が6万5千までしかありませんでした) ひょっとして  A B  1 1  2 2  3 2 ・・・と表を準備されたのでしょうか。  A   B  1   1  2   2 501   3 300001 4 と準備して C1に300001とあったとして VLOOKUP(C1,A1:B4,2) でいけると思います

回答No.3

VLOOKUPでいけますよ。VLOOKUPは、ある指定をすることで、ぴったりの数字が見つからなくても、その範囲にある数字で処理してくれます。 ・VLOOKUP用のリストを作ります。  Sheet2に作っておきましょう。    A   B 1    1   1 2    2   2 3   501   3 4 30001   4 ・次にVLOOKUPの指定です。  以下のように書きます。 =VLOOKUP(A1,Sheet2!$A$1:$B$4,2,TRUE)  最後のTRUEは、数字がリストに見つからない場合、検索値を超えない最大の数を拾ってくるオプションです。  この場合リストは、降順に並んでいる必要があります。 ・註記  ご質問では、500のときが2とも3とも取れましたので、とりあえず500は2、501から3としました。  おためしください。

tokeida
質問者

お礼

VLOOKUPで、出来るんですね・・・。 分かっているつもりで、分かっていなかったようです。 ありがとうございます。

noname#99913
noname#99913
回答No.1

=IF(A1=1,1,"")&IF(AND(2<=A1,A1<=500),2,"")&IF(AND(501<=A1,A1<=300000),3,"")&IF(300001<A1,4,"")  500が重複していたので、500と501に分けました。

関連するQ&A

  • エクセルで範囲内の条件を満たす数値を返す関数を教えてください。

    エクセルで範囲内の条件を満たす数値を返す関数を教えてください。 100以下なら1111 100超~200以下なら2222 200超~300以下なら3333 300超~400以下なら4444 400超~500以下なら5555 500超~600以下なら6666 600超~700以下なら7777 700超~800以下なら8888 800超~900以下なら9999 900超なら10000 上記のような条件があり、入力した数字が該当する条件の範囲内に該当している数字を抽出したいのですが、それができる関数を教えてください。 例えばA1セルに650と入力するとB1セルに上記の条件で該当する7777を表示する、 A1セルに100と入力するとB1セルに1111、 901とA1に入力するとB1に10000と表示されるなどのようにしたいのです。 IFを使った関数では7つまでしかネストできないので、上記の場合10ネストしなければならないのでIF関数が使えません(使える方法があるかもしれませんが私は知りません)。 ネストせずに「&」を使う方法も考えたのですが、それだと数値として扱われず文字として扱われてしまい表示形式を自在に編集することができなくなってしまいます。 良い解決方法を教えてください。

  • Excel :条件が一致した時にその数字を表示する関数

    以下の内容をExcelの関数で表す場合にどのような関数が有効でしょうか?どなたかお知恵を拝借願えると幸いです。 「A1,A2,A3にランダムに数字が入っています。仮に、3つにセル中、2つ以上の数字が一致した時には、A4セルに一致した数値を表示させ、3つのセルの数字がどれも一致しない場合は、ゼロと表示させます」 以下のようなIF関数を考えてみたいのですが、「真の場合」に一致した数字を表示させる方法が分からず悩んでいます。 IF(OR(A1=A2,A1=A3,A2=A3),一致した数字,"0") 勿論、このIF関数に拘っていないので、上述「」内の内容が関数で表現できればよいと考えております。

  • VLOOKUP関数? 数字⇒文字 同じセルに表示

    初心者です。既出かもしれませんがよろしくお願いします。 営業所を表す数字コードが100以上あります。 例えば、 10111 品川営業所 20333 福岡支店営業課  のような感じです。 エクセルの「A1」セルに「10111」と入力したら同じ「A1」セルに「品川営業所」と表示させるにはどうしたら良いのでしょうか。 VLOOKUP関数だと、「A1」セルに「10111」と入力して「B1」セルに「品川営業所」と表示させることは出来るようですが、入力した同じセルに表示させたいのです。 IF関数でやるには数が多すぎますし、 単語登録も考えましたが、これはパソコン1台毎ですよね? 複数のPCの共有フォルダで使う表なので、何かよい方法がないものか、ご教示下さい。

  • 【エクセルで】ゼロを入力すると表示されない→数字を表示させるには?

    エクセルについて教えてください。 セルに数字を入力した時に,1以上だとその数字が表示されるのですが 0の時は何も表示されません。 0の時も「0」と表示させたいのですが,どうすれば良いのでしょうか? (他の人が以前に使っていた表をそのまま引き継いで使っているため 分からなくて困ってます・・・)

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

    エクセルで表を作成している際 例えばA1、A2には何らかの数字が入力され、A3はブランク という場合、A1で入力されているセルの隣のB1には決まった数字(20など)、ブランクのA3の隣のB3には何も表示されないという関数を入れたいと考えました。 IF関数を使うのだろうと思い色々と入力したのですが、エクセル初心者ゆえ、勉強不足で上手く出来ませんでした。 お分かりになる方にご教授いただければと思い、質問させていただきます。 宜しくお願い申し上げます。

  • Excel 関数で上から順に数字を整列させる

    Excelで、下記表(例)に入力された数字を上から順に関数を用いて隣のB列に整列させたいです。 ・例 A1:A60の表があります。 ※以下A列に入力された数字とします 1 空白 2 20 3 空白 4 15 5 25 ・(省略、この間空白と考えて下さい) ・ ・ 59 10 60 空白 上記表(例)は、A2に20,A4に15,A5に25,A59に10それ以外は空白を表します。 上記表のセル内数字は全て手入力とします。 全てのセルが空白の場合もあります。 B列はB1:B5の5行です。 この入力された数字を関数を用いて、B列に上から順にB1に20,B2に15,B3に25,B4に10,B5は空白となるように整列させたいです。 B列セル結果は他シートに参照されますのでセルはロックを掛けています。 上記のことからデータの並べ替えも使えませんし昇降順でもありません。 上から順に整列させた数字を、B1:B5の5行内で上位5まで表示させます。 A列の行数が多いのでif関数も使えません。 なお、上記質問内に不明な点がありましたら補足させて頂きます。 以上、宜しくお願いします。

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

    エクセルで、たとえばA1セルに1、B1セルに2、C1セルに3の 数字が入力されています。 その上で、D1セルに「A1&B1&C1」という数式をいれると、 見た目上はD1セルに「123」と表示されますが、 数字の123(百二十三)という意味では認識されていないようで、 ほかの関数の参照に使えません。 見た目が「123」の値を、数字の「123」に変換する方法は ないでしょうか。 よろしくお願い致します。

  • excel IF関数 表示形式

    エクセルのについてです。 例えば、A1セルがUSDやJPYなど通貨を入れるセルとします。 もしA1セルにUSDを入力すれば、隣のB1セルに入力された数字の表示形式は12.50と小数点第二位まで表示。もしA1セルにJPYを入力すれば、隣のB1セルに入力された数字の表示形式は1,000など第一位まで表示。 IF関数でもなんでもいいのですが、このような設定は可能でしょうか・・? どうぞよろしくお願いいたします。

  • 範囲に関するエクセル関数

    歩合給の計算表を作りたいのですが、例えばセルA1が1より大きく6より小さいとき、セルB1 は100円、A1が6より大きく11より小さいとき、セルB1 は200円という具合です。 IF関数でA1が6より小さいとき、11より小さいときと関数を入力するとセルA1が5の場合、6よりも小さく11よりも小さいので計算が正しくできませんでした。宜しくお願いします。

  • VLOOK関数で作った請求書で、¥が表示されない

    請求書の元になる一覧表では数字に¥や,がついています。 その金額をVLOOK関数で作った請求書に入れてると通貨表示のないただの数字になってしまいます。それで、請求書の金額のセルを金額表示(¥や,のある)にさせようと、「通貨」でいろいろ試しているのですが、全く変更できません。セル内は、例えばこんなふうになっています。 =VLOOKUP(I4,Sheet1!A2:BH799,37,FALSE)&"" VLOOK関数を入れないセルの数字は、金額表示にすぐできます。 どうしたらいいのでしょうか。宜しくお願い致します。

専門家に質問してみよう