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

解決済みの質問

[Excel2010]プルダウンに連動させる関数

プルダウンで項目を選ぶと、別に作ったリストから、プルダウン項目に連動した値が引っ張られてきて、その隣のセルに表示されてくれるようにしたいのですが、どのような関数を設定すればそれが可能でしょうか?

たとえば、このような表を作りたい場合:
・B1セルに「自動車税」、C1「重量税」、D1「自賠責保険料」と表記
・A2セルに、車種をプルダウンで表示させる設定をします。「乗用車」「軽自動車」「ライトバン」から選択できるように。
・自動車税、重量税、自賠責保険料の、それぞれの車種の場合の金額を、同じシートの別の場所か、別のシートにリストを作っておきます。
・A1セルで車種を選ぶと、連動して、車種に対応した金額を引っ張ってきてくれる。
 「乗用車」を選ぶと、B2「34,500円」・C2「30,000円」・D2「24,950円」、
 「軽自動車」だと、B2「7,200円」・C2「7,600円」・D2「21,970円」、
 「バン」だと、B2「14,300円」・C2「7,600円」・D2「14,190円」・・・が、自動的に表示される

・・・というふうにしたい場合、B2・C2・D2セルに、どのような関数を設定すればよいでしょうか?
ご存知の方、よろしければ教えてください。

投稿日時 - 2011-08-04 01:20:58

QNo.6919948

すぐに回答ほしいです

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

同じシートで表があるとしてやると(別シートの場合、参照する表の範囲には、Sheet2!XXXのようにシート名+!を頭につけること)
基準表
F1:I4 ---は空白セル
----乗用車軽自動車ライトバン
自動車税111213
重量税212223
自賠責313233
ーーー
A列に
入力規則で、データ入力規則ーリストー(リストの)セル範囲を G1:I1とする。
ーー
例データ A1:D8
---自動車税重量税自賠責
乗用車111213
軽自動車212223
ライトバン313233
軽自動車212223
ライトバン313233
乗用車111213
ライトバン313233
B2セルに =IF($A2="","",INDEX($G$2:$I$4,MATCH($A2,$G$1:$I$1,0),MATCH(B$1,$F$2:$F$4,0)))
と入れてD2まで右方向に式を複写。
次にB2:D2の範囲の式を下方向に複写。
結果
上記B2:D8の通り。
使い方は
A列で乗用車、軽自動車、ライトバン
のいずれかを選べば、その行の、B-D列に値が出る。
ーー
>プルダウンで項目を選ぶと、別に作ったリストから、プルダウン項目に連動した値が引っ張られてきて、その隣のセルに表示されてくれるようにしたいのですが
これは質問に書く必要なし。A列にデータを手入力しても、入力規則で選んでも、セルの値には変わりが無いのだ。このことが意外に判ってない質問がある。
ーー
プルダウンで入力選択する、仕組みはどうするか、まで判らず、質問範囲に入っておれば別だが。

投稿日時 - 2011-08-04 15:32:55

お礼

今回の場合、同じシートの方が都合がよかったので、こちらの数式を参考にさせていただきました。ありがとうございました。
手入力でも入力規則でも値に変わりがないというのは分かっていませんでした・・・

投稿日時 - 2011-08-05 00:36:42

ANo.2

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

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

回答(2)

ANo.1

B2=IF($A2="","-",VLOOKUP($A2,別のシート!リスト範囲,COLUMN(),FALSE))
でC2,D2へ数式をコピーする。



別のシート!リスト範囲
 「A   」「B    」「C    」「D     」
1「車種  」「自動車税」「重量税」「自賠責保険料」
2「乗用車 」「34,500円」「30,000円」「24,950円」
3「軽自動車」「7,200円」「7,600円」「21,970円」
4「バン  」「14,300円」「7,600円」「14,190円」

投稿日時 - 2011-08-04 02:43:06

お礼

簡潔にご説明ありがとうございました。
今後、別シートでリストを作りたい場合に参考にさせていただきます。

投稿日時 - 2011-08-05 00:37:55

あなたにオススメの質問