パソコンから恋愛まで、みんなの知識、みんなで教えて!

OKWave

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

エクセルで〇~〇の数値の場合決まった文字に変換する

タイトルではわかりにくいですが、
具体的に言うと数値を打ち込んだ時に0~30なら「標準」、30~50なら「5割減」、50~100なら「10割減」と変換されるようにしたいです。

投稿日時 - 2018-01-11 17:01:32

QNo.9417333

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(6)

ANo.6

>数値を打ち込んだ時に
何処のセルへ?

>0~30なら「標準」、30~50なら「5割減」、50~100なら「10割減」と変換される
処理結果を何処へ代入(表示)するのですか?
また、他の解答者が指摘しているように30と50が領域を跨いでいるので判定基準を跨がないように指定してください。

一般的には下記のようなIF関数の入れ子で処理できます。(空欄は0と同じ扱いです、100を超える値は100と同じです)
[判定結果]=IF([入力値]<30,"標準",IF([入力値]<50,"5割減","10割減"))

投稿日時 - 2018-01-11 22:56:58

ANo.5

正確を期す為の確認です。
》 0~30なら「標準」、30~50なら「5割減」、50~100なら「10割減」と…
Excelらしく表現しませうネ

以上 未満__表示
_0__30__標準
_30__50__5割減
_50_100__10割減

0未満および100以上は考えなくてOKですか?(エラーを表示しても構わないと?)

投稿日時 - 2018-01-11 18:44:48

ANo.4

(1)おそまつな質問だ。区切りの30や50は、両方に含まれているが、
どちらにするのか?
(2)エクセルの関数では、元データを、「標準」などに「変換」できない。
言い間違いだろうが、回答者読者は、真剣に質問文を読んでいる。
未満などで、整合性を採ること。
(3)同行の別列に「5割減」などの文字列を出すのなら、VLOOKUP関数のTRUE型を使えば簡単だろう。
ーー
例えばG2:H4列に
0標準
305割減
5010割減
基準表データを作っておく。
ーー
下記でテストをやってみてください。
A2セルに1、A3セルに2、以下100までA列に連続整数を入れる(作る)
B2セルに、=VLOOKUP(A2,$G$2:$H$4,2,TRUE)を入れて101行まで
式を複写。
このB列の文字列を見て正しいことを質問者が、納得すること。
質問者のニーズに照らして、間違っている(づれている)場合は、基準表のG列基準表の区切り数字29、や30などを、1だけ修正すること。
Googleで「VLOOKUP関数 true型」で照会して、じっくり勉強のこと。
VLOOKUPはエクセルで最も有名な関数で、この関数だけの本(新書版)が出ているほどだ。
 

投稿日時 - 2018-01-11 18:31:50

ANo.3

>具体的に言うと数値を打ち込んだ時に0~30なら「標準」、30~50なら「5割減」、50~100なら「10割減」と変換されるようにしたいです。

コンピューターは、こういう処理は不可能です。

なぜなら「30」の時と「50」の時に、どうすれば良いか判らないからです。

コンピューター的に処理するには

・負数の場合(0を含まない)
・0~30未満なら「標準」(0を含み、30を含まない)
・30以上~50未満なら「5割減」(30を含み、50を含まない)
・50以上~100以下なら「10割減」(50、100を含む)
・100を超える場合(100を含まない)

のように「重複」や「抜け」が無いように「きちんと定義」しないとなりません。

また、場合によっては

・負数の場合(0を含まない)
・0~30以下なら「標準」(0、30を含む)
・30を超え~50以下なら「5割減」(30を含まず、50を含む)
・50を超え~100以下なら「10割減」(50を含まず、100を含む)
・100を超える場合(100を含まない)

のようにしないとならないかも知れません。

この質問に答えるには、以下の点を明確にする必要があります。

・マイナスをどうするか?
・30をどうするか?(「標準」にするか「5割減」にするか)
・50をどうするか?(「5割減」にするか「10割減」にするか)
・100を超える数値をどうするか?

上記を踏まえ、A1に対象数値が入って居ると仮定した式を書くと

=IF(A1<0,"未定義",IF(A1<30,"標準",IF(A1<50,"5割減",IF(A1<=100,"10割減","未定義"))))

または

=IF(A1<0,"未定義",IF(A1<=30,"標準",IF(A1<=50,"5割減",IF(A1<=100,"10割減","未定義"))))

となります。

「A1<30」か「A1<=30」か、どちらにするかで「30をどっちに含めるか?」が決まります。同様に、「A1<50」か「A1<=50」か、どちらにするかで「50をどっちに含めるか?」が決まります。

コンピューターはバカなので「境目が曖昧」だったり「言わなかったことがある」と、どうして良いか判りません。

「境目の30や50をどっちに入れるか曖昧」だったり「マイナスや100を超える数値について指示がない」と、コンピューターは困ります。

投稿日時 - 2018-01-11 17:33:10

ANo.2

30と50がダブっているのですが、それはおいといて、IF関数で、
=IF(B10<=50,IF(B10<=30,"標準","5割減"),"10割減")
これじゃ駄目??

投稿日時 - 2018-01-11 17:30:35

ANo.1

別セルでいいのならIFを使った簡単な立式で足りると思いますから、打ち込んだセルにそう表示したいということです?

投稿日時 - 2018-01-11 17:21:54