- ベストアンサー
エクセルのドロップダウンリスト
入力規則のドロップダウンリストですが、次のような使い方は可能でしょうか?また可能なら方法を教えて頂けませんか?よろしくお願いします。 A、B列にドロップダウンリストを設定し、A列のリストに値を複数設定し、B列のリストの値をA列の値によって変化させたいのですが・・・。各列とも、複数行にわたってドロップダウンリストを設定しています。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
では具体例を簡単に示します。 1,セルA1に入力規制をかけて、リストの範囲をC1:C2としてください。 2,セルC1に"TRUE"、セルC2に"FALSE"と記入します。 (A1のドロップダウンリストには"TRUE"と"FALSE"が表示されますね) 3,セルB1に入力規制をかけて、リストの範囲をD1:D2としてください。 4,セルD1に"=IF(A$1=TRUE,E1,F1)"と記入し、セルD2までコピーします。 5,セルE1,E2,F1,F2に適当な文字を入れます。 これで、A1のドロップダウンでTRUEを選択した場合はB1のドロップダウンにE1,E2のりストが、A1のドロップダウンでFALSEを選択した場合はB1のドロップダウンにF1,F2のりストが表示されますね。 要は、B1のリストをあらかじめ別に用意しておいて、A1の選択結果によってB1のドロップダウンのリストの範囲に表示させる値を変化させるということです。 この例では、用意したリストが2列しかないのでIF関数で単純に分けましたが、列が増えるとHLOOKUP関数などを使う必要があります。検索関数の使い方についてはヘルプを参照してください。
その他の回答 (3)
- kbonb
- ベストアンサー率51% (254/492)
こんにちは 以下のページがご参考になるのでは? 【エクセル技道場】-入力規則-縦横可変範囲の名前定義でリスト http://www2.odn.ne.jp/excel/waza/validation.html#SEC5
お礼
ありがとうございます。 何とか思っているようなものができそうです。
- TTak
- ベストアンサー率52% (206/389)
pochitamaさんこんにちは 可能です。 B列のリストの選択範囲を直接変える場合はVBAで行いますが、B列のリストの選択範囲に検索の関数を入れておいて、その関数の検査値をA列のドロップダウンリストの値に参照してやれば、A列ドロップダウンリストの選択結果によってB列ドロップダウンリストの値が変わりますから、お望み通りになると思いますよ。 - EXCEL2000にて動作確認 -
お礼
お返事ありがとうございます。 「可能」という事がわかり嬉しかったです。 さっそく自分でやってみたのですが上手くいきません・・・ Excelの関数もあまり詳しくないのですが、A列の値を参照するのは理解していると思うのですが、その値をどうやってドロップダウンリストの値に反映させるのかが分かりません。 もし宜しかったら、具体的な内容を教えて頂けませんか?
- ifnet
- ベストアンサー率33% (5/15)
入力規則の機能だけでは実現できません。 VBAを操作する必要があります。 VBAまでやる気があれば、再質問してください。
お礼
具体的で丁寧なお返事、とてもうれしいです。 上記の通り、2列分はできました。 少し検索関数の使い方を見てみながら、列を増やした場合を想定してみます。 ありがとうございました。