• ベストアンサー

エクセルで隣のセルの内容によって文字を入れる

エクセルです。 A列に数値が入っています。 B列にはA列の数値に応じて 文字を入れたいと思っています。 例:左がA列の内容で右がB列に入れたい文字 -1~-2 →A -0.3~-0.9 →B 0.5~-0.2 →C 0.6~1. 2→D -- →-- 上記のような規則でB列に入れる場合のB列に入れる式を教えて下さい。

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

  • ベストアンサー
回答No.5

これでどうすか? =IF(AND($A1<=-1,$A1>=-2),"A",IF(AND($A1<=-0.3,$A1>=-0.9),"B",IF(AND($A1<=0.5,$A1>=-0.2),"C",IF(And($A1<=1.2,$A1>=0.6),"D","-")))) 但しマイナス系も文字 [-],[-],[ー],[―]は適正に処理してください。

fightman11
質問者

お礼

ありがとうございました。 全て解決しました。

その他の回答 (6)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.7

ANo.3です。 質問には「A列に数値が入っています。」と書いてあったので気にしていませんでしたが、もしかしてA列に「--」が入る事もあるんですか? 「--」は文字列で数値では無いですよ。 #細かい事と思うかもしれませんが、Excelやプログラムの仕様では重要な事です。 それでしたら、B1に入れる式を↓の様にしてください。 =IF(A1="--","--",VLOOKUP(A1,D$1:E$6,2,TRUE))

fightman11
質問者

お礼

ありがとうございました。 説明不足ですみませんでした。

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

1.2を超える値や-2より小さい数字を入力しないなら、以下のような数式で簡単に範囲分けすることができます。 =LOOKUP(A1,{-2,-0.9,-0.2,0.6},{"A","B","C","D"})

fightman11
質問者

お礼

ありがとうございます。

回答No.4

不明な点が多いですが回答。 B2セルに =IF(A2="","",LOOKUP(A2,$D$2:$E$8)) 下へオートフィル 添付図にサンプル掲載。

fightman11
質問者

補足

ありがとうございます。 ~というのはその範囲の数値を意味しています。 小数点1桁までの数字しか入っていません。

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.3

-0.95の時はどうするの?とりあえず、以下の様に仮定しました。 -2>n …NG -1>n=>-2 …A -0.2>n=>-1 …B 0.6>n=>-0.2 …C 1.2>n=>0.6 …D   n=>1.2 …NG シートの以下の様な表をどこかに作っておきます。 -9999 NG -2 A -0.9 B -0.2 C 0.6 D 1.2 NG 添付の図ではD1:E6に作りました。 で、B1に↓の式を入れて下にコピー =VLOOKUP(A1,D$1:E$6,2,TRUE)

fightman11
質問者

お礼

ありがとうございます。

回答No.2

VBAではなく式で説明させていただきます。 =IF(AND($A1<=-1,$A1>=-2),"A",IF(AND($A1<=-0.3,$A1>=-0.9),"B",IF(AND($A1<=0.5,$A1>=-0.2),"C","D"))) これをB1に貼り付けてみてください。 因みにC以降も更に条件が続くようでしたら、同じ用に続けてみてください。 ※その場合最後のカッコの数に注意。 補足 条件があまり多いようでしたらVBAで実装することをお勧めいたします。 ご参考に。

fightman11
質問者

補足

ありがとうございます。 すみませんが、--の表示が出来ません。

回答No.1

if or and関数を使えば簡単に出来ます。

参考URL:
http://kokoro.kir.jp/excel/if.html

関連するQ&A

  • Excel 特定の文字を含む時に隣セルを表示した

    D列とE列は一覧データです。 A列とB列の文字列を含むものをE列で探して、見つかったらE列の隣のD列の文字列をC列に表示する関数を組みました。 ・関数 =SUMPRODUCT((ISNUMBER(FIND(A1,$E$1:$E$5)))*(ISNUMBER(FIND(B1,$E$1:$E$5)))*$D$1:$D$5) C列の数値が倍になっている箇所があるのですが理由がわかりません。 わかる方がいらっしゃいましたら教えていただきたいです。 例 A列  B列  C列  D列 E列 ○○  ××  111  111 ○○★×× ○○  ××  111   112 △△★◎◎ ○○  ××  111  113 ▽▽★☆☆ △△  ◎◎  112  114 ■■★◎◎ △△  ◎◎  112    115 ●●★××

  • エクセルでセルのややこしい書式設定と計算をしたいです

    エクセルで次のようなスプレッドシートを作りたいのですがヘルプ等を見てもうまくいきません。どうしたらよいでしょうか? A列を表示用、B列、C列を入力用、D列を計算用にしたいです。 A列はセルの書式設定でユーザー定義を変えればよさそうな気がしますが・・・ またD列の計算はC列のセルの内容を分けないとできないでしょうか? ◎-はマイナスではなくハイフンです ◎C列は数値では3桁のうち左2桁の単位は32分の1、右1桁の単位がは8分の1/32です。 A列    B列   C列    D列で計算させたいもの 96-316  96   316    =96+31/32+6/8/32 (答え96.9921875)  100-01  100   01     =100+1/32+0/32(答え100.03125) どうかご教授ください。 よろしくお願い申し上げます。

  • エクセル 文字が表示されたセルを抽出したい

    エクセルの関数を教えて下さい。    A     B     C     D   1 りんご              りんご 2       プリン        プリン 3             紅茶   紅茶 4 バナナ              バナナ 5      6             緑茶   緑茶 上記のような表があります。(A~は列、1~は行番号です) A1~C6までは、IF関数で、条件にあった場合に“りんご”などを表示、そうでない場合には空白と なるような式が入っています。 そして、D列のように、それぞれの行に表示されている文字を抽出、何も表示されていない場合は空白としたいのです。 D列にはどういった式を入れればよいかを教えて下さい。 ※各行に表示されるのは1つのセルのみで、例えばA1のセルとC1のセルに文字が表示される ことはありません。A1に文字が表示されている場合は、必ずB1・C1のセルは空白です。 宜しくお願い致します。

  • Excel 特定の文字を含む時に隣セルを表示したい

    D列とE列は一覧データです。 C列に関数を入れ込みたいです。 関数について、A列とB列の文字列を含むものをE列で探して、見つかったらE列の隣のD列の文字列をC列に表示するもの。 わかる方がいらっしゃいましたら教えていただきたいです。 例 A列  B列  C列  D列 E列 ○○  ××  111  111 ○○★×× ○○  ××  111  112 △△★◎◎ ○○  ××  111  113 ▽▽★☆☆ △△  ◎◎  112  114 ■■★◎◎ △△  ◎◎  112  115 ●●★××

  • エクセルで 2つの数値(整数)をそれぞれ列と行に対応させ、クロスするセルを指し示したい

    エクセルで、例えば A1 の数値(1,2,3...)を列番号(A,B,C...)に対応させて A2 の数値 (1,2,3...)を行番号(1,2,3...)に対応させて、クロスするセルを指し示したり、内容(数値)を参照するにはどうすればいいのでしょうか。 例をあげると、A1=4, A2=5 のときには D5 となり、A1=26,A2=10 のとき Z10 となるようにしたいのです。 やりたいことは、A1=3,A2=5,B1=26,B2=10 のときに C2 には D5からZ10までの合計を入れたい( C2=SUM(D5:Z10) )というようなことです。   上記のようなことをしたいのですがどうすれば良いのでしょうか。教えていただけないでしょうか。お願いします。

  • EXCELで式での空白セルの挿入方法

    A列は空白行で、B列は数値が入っていたり空白だったりする行で構成されています。 またC列からD列までの全ての行には数値が入っています。 この時A列に条件付き数式を入力して、B列が空白でなければB列に空白セルを挿入して現B列からD列を右にシフトさせたいのですが、数式で可能でしょうか? 数式で可能ならばA列に入力する式を、不可能なら参考のためVBAでの記述をお教え頂けると嬉しいです。(VBAはあまり理解しておりませんが。) 例 【処理前】 A列 B列 C列 D列 E列     22   33  44          55  66     77   88  99         100  101 【処理後】 A列 B列 C列 D列 E列 式       22  33  44 式       55  66 式       77  88  99 式      100  101 2万行の処理を1回のみしたいです。 宜しくお願いします。

  • エクセルで数値と文字が入ったセルからの数値の抽出

    皆さんこんにちは。 エクセルの使い方についての質問です。 添付画像の例のようにA列に 「XXYYYZZ(XとZは文字、Yは数値で3桁または4桁)」というフォーマットで 数値と文字が入っているセルがあります。 同様にB列には「WWZ(Wは数値)」というフォーマットで、 同様に数値と文字が入っているセルが並んでいます。 これらからDやE列にあるように数値のみを取り出すためには DやE列にどのような関数を入れてやればよいのでしょうか。 どなたか教えていただければ幸いです。 よろしくお願いします。

  • 一つのセルに特定の文字が入ると隣のセルに条件に合った文字を入力したい

    列Aと列Bに特定の条件を入力します。 列Cに列Aに入力した行の文字を入力規則のリストで呼び出すと、列Dに列Aと同じ行に入っている列Bの文字を自動で入力するようにしたいのですが、どのようにしたらいいでしょうか? IF関数で条件分岐させようと思ったのですが列AもBも随時追加されていくのでこの方法が使えませんでした。

  • エクセル2010で二つのセルを一つにまとめる関数

    エクセル2010を使っています。 二つのセルに入っているそれぞれの数値を、1つのセルに文字のようにまとめたいです。 例えば、 B2に3、C2に4、なら、D2に34、です。 ただ、 B3に数値が入っていて(例えば5)、C3が空白なら、D3は、B3の数値(5) としたいです。 これらの条件を満たす、D列にいれる関数を教えてください。 どうぞよろしくお願いします。

  • Excel セル内の式

    Win2000 Excel2000 いつもお世話になっております A列に「○」と「×」の2種類の値が設定されます B列には手入力した、数値が入ります(ここに式は設定しません) 上記内容でデータがN件設定されます ルールとしましては A列が○の時B列の値はプラス A列が×の時B列の値はマイナスとなります 但し、B列にプラスやマイナスの記号は表示しません B列の合計をC1に式を組むことにより、求めたいのですが可能でしょうか? Ex) A列  B列    C1 = 25 ←(式により25を求めたいです) ○    10 ○    20 ×    5  ・    ・  ・    ・

専門家に質問してみよう