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

解決済みの質問

エクセル 抽出した単語で、別セルに料金を返す方法

いつもお世話になります。(エクセル初心者で申し訳ありません)

例えば、
「A1」のセルに 「データ」→「入力規則」→「リスト」で設定し、「さんま」「さけ」「あじ」などの単語を選べるようにしておきます。

その中で、「さんま」を選んだ場合、「B1」には、さんまの料金 「150円」(仮に)と表示させたい、
また、「さけ」を選んだ場合は「500円」、
さらには、「あじ」を選んだ場合は「300円」ということを実行する場合、
(「A1」に何も表示がない場合は空白を)

「B1」のセルには、 =IF(A1=”さんま”、150、IF(A1=”さけ”、500、IF(A1=”あじ”、300、””))))

で表示可能かと思いますが、

この選ぶ項目が2~3個なら、このままの方法で可能かと思いますが、十数個の項目になると、表示されなくなります。

他の方向なども含めて、何か、良い方法はありますでしょうか?

よろしくお願い致します。

投稿日時 - 2012-02-06 15:52:30

QNo.7289027

困ってます

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

回答No2です。
B1セルへの入力の式はシート2に該当する品名が無い場合にはえアラー表示になりますので次のような式がより丁寧ですね。

=IF(A1="","",IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2,FALSE),"単価表にありません"))

投稿日時 - 2012-02-06 16:17:39

お礼

早速のご回答ありがとうございます。

参考にさせて頂きます。(2回もご回答頂き感謝です)

投稿日時 - 2012-02-06 16:47:51

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

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

回答(3)

ANo.2

シート1のA1セルから下方にリストから選んだデータが入力されるとしてB列に価格を表示させるのでしたら、例えばシート2にはデータベースとしてA列にはさんま、あじなどの名称を、B列には対応する単価を入力しておきます。その上でシート1のB1セルには次の式を入力して下方にオートフィルドラッグコピーします。

=IF(A1="","",VLOOKUP(A1,Sheet2!A:B,2,FALSE))

これでシート2のデータベースを整備しておくことで何件でも対応できます。

投稿日時 - 2012-02-06 16:12:38

お礼

早速のご回答ありがとうございます。

投稿日時 - 2012-02-06 16:46:31

ANo.1

一例です。
(1)別セル範囲(仮にSheet2のA列に商品名,B列に金額)に価格表を作成
   Sheet2のA1に「さんま」B1に150、A2に「さけ」B2に500以下同様に入力
(2)B2に=IF(A1<>"",VLOOKUP(A1,Sheet2!A:B,2,FALSE),"")

投稿日時 - 2012-02-06 16:06:32

お礼

早速のご回答ありがとうございます。

試してみたら出来ました。ありがとうございます。

投稿日時 - 2012-02-06 16:41:12

あなたにオススメの質問