Excel2016使用
プルダウンの連動
2つのプルダウンを連動させて、1つ目で選択した内容に応じて2つ目のプルダウンリストの内容が変更される方法をご紹介します。
以下の手順でできます。
- プルダウンに表示する一覧(リスト)を作成します。
- 1つ目のプルダウン用の名前を設定します。
- 2つ目のプルダウン用の名前を設定します。
- 入力規則を設定します。
ポイントは「名前が連動していること」「INDIRECT関数を使うこと」の2つとなります。
それではやってみましょう。
プルダウンに表示する一覧(リスト)を作成します。
一覧表を作成しますが、この表の作り方にコツが名前を連動させるコツがあります。
左端の列は1つ目のプルダウンリストに表示する値にします。左端の列の値に連動して2つ目のプルダウンリストに表示したい値をその右側に入力していきます。
上記の場合、1つ目で大分類「本」を選択した場合に2つ目には「新書」「文庫」「コミック」「雑誌」「単行本」がプルダウンに表示する値となります。
1つ目のプルダウン用の名前を設定します。
左端の列(A3からA7セル)を選択して数式(リボン)の「名前の定義」から名前を付けます。
1つ目のプルダウン用に「大分類」という名前を定義しました。
2つ目のプルダウン用の名前を設定します。
表(A3からG7)を選択して数式(リボン)の「選択範囲から作成」を使って3行目から7行目の名前を一括で設定します。
「左端列」をチェックした状態でOKボタンを押します。
数式(リボン)の「名前の管理」から設定された内容を確認します。
大分類の値と同じ名前の定義が作成されています。
これがミソです。
入力規則を設定します。
入力規則を設定していきましょう。
まずは大分類からで設定します。対象セル(B3)を選択してデータ(リボン)の「データの入力規則」をクリックします。
入力値の種類「リスト」、元の値「=大分類」を設定してOKボタンを押します。
1つ目が設定されました。
2つ目も同様に対象セル(B4)を選択し「データの入力規則」を設定します。
入力値の種類は「リスト」、元の値は以下の計算式を設定します。
=INDIRECT(B3)
OKボタンを押して内容を確認するとB3セルが「ゲームソフト」が選択された状態のためB4セルの内容がゲームソフトの中分類のみが表示されています。
大分類の値を「本」に変更すると連動して中分類のプルダウンリストの内容が変わります。
大分類で選択する値と同じ名前の「名前の定義」を作成することで連動している仕組みです。大分類「本」を選ぶと、「本」という名前の定義を2つ目のプルダウンに表示させるこということになります。
要は「名前でつながっている」(名前が連動している)という状態です。
また「元の値」に設定する計算式について「=B3」と入れても連動しないので注意してください。「=B3」と入れるとB3の文字列がそのままリストされるだけとなります。
理由は「=B3」とい計算式はB3セルの値の内容を返すだけの式のため、上記例では”本”という文字列を返してきます。そのため”本”が単純にプルダウンに評されるだけになります。
INDIRECT関数は引数の文字列を「参照」としてくれる関数です。”A1″という文字列を与えればA1セルへの参照となり、A1セルの内容を使うことができます。文字列としてセルの位置、名前の定義を作成すればINDIRECT関数を使って対象セルへの参照が可能となります。
今回のB3セルは”本”となっています。”本”という「名前の定義」(参照)を返してくれることになります。
まとめ
ここまでご覧いただきありがとうございます。
プルダウンの連動はいかがでしょうか?
今回使用したINDIRECT関数は少し慣れていないとピンとこないかもしれません。
その場合、このプルダウンの連動ではINDIRECT関数を使わないとうまくいかないことだけ覚えてください。
実はINDIRECT関数は使えるようになるとできることが広がってくる関数です。
いろんな場面で登場してくると思います。何度も使って覚えていきましょう。
もっとエクセルを使いこなしたい人にお勧めの本は以下です。
具体的なケースを例示しながら解説してくれているのでとても分かりやすいです。
まさに「最強の教科書」となる1冊です。
興味のある方は是非ご覧になってみてください。
コメント