困っている女性
解決する男性
困っている女性
解決する男性
困っている女性
この記事では、INDIRECT関数とテーブルを使って「絞り込みリスト」を作成する方法を説明します。
「絞り込みリスト」は、リストを選択しながら、決まった一覧を作成するのに使えます。
リストから値を選択することにより、入力ミスを防ぐことができるようになります。
また、テーブルを利用するので、リストをあとから追加することになっても、簡単にメンテナンスできるようになります。
ぜひ、この機会に絞り込みリストを作れるようになりましょう。
入力ミスとメンテナンスを減らして、さっさと仕事を片付けて帰りましょう。
以下の記事では、「名前付きセル」を利用して「絞り込みリスト」を作る方法を説明しています。
【EXCEL:INDIRECT関数】指定したセル番地でセルの値を取得したい【EXCELのINDIRECT関数の使い方】名前付きセルを利用して絞り込みリストを作りたい
今回の記事で説明する「テーブルを利用した絞り込みリストを作る方法」は、上記の記事よりメンテナンス性が優れた絞り込みリストを作ることができます。
それでは、今回作成する「絞り込みリスト」のサンプルについて説明します。
もくじ
絞り込みリストの見本
以下が今回作成する「絞り込みリスト」の見本です。
大分類(種類)を選択すると、小分類(商品)から選べるリストが絞り込まれます。
上記の図では、大分類(種類)に「野菜、果物、魚」がリストになっています。
大分類(種類)を選択すると、小分類(商品)のリストが絞り込まれたリストになります。
上記の図では、大分類(種類)に「野菜」を選択したので、小分類(商品)が絞り込まれて「きゃべつ、にんじん、じゃがいも、たまねぎ」のリストになっています。
2行目の大分類(種類)で「果物」が選択されたので、小分類(商品)のリストが絞り込まれて、「りんご、いちご、スイカ、ぶどう」のリストになっています。
このように、大分類で選ばれた値により、小分類に表示されるリストを変化させることを「絞り込みリスト」といいます。
それでは、絞り込みリストの作成方法を順番に説明していきます。
(1)絞り込みリスト対象のデータを作成する
まずは、絞り込みリストの元ネタとなる一覧を作成します。
1行目に絞り込みリストの大分類に当たる名称を入力します。
上記の図では、大分類の名称「A1:野菜、B1:果物、C1:魚」を入力しています。
つぎに、小分類に当たる名称を2行目以下に入力します。
上記の図では、大分類に当たる小分類をそれぞれ、A列からC列に入力しています。
例えば、大分類「野菜」の小分類として「きゃべつ、にんじん、じゃがいも、たまねぎ」を入力しています。
(2)小分類の一覧からテーブルを作成する
小分類の一覧それぞれからテーブルを作ります。
小分類の一覧(A2からA5)を選択し、「テーブルとして書式設定」をクリックします。
テーブルの見た目を選択します。
今回は野菜なので、緑の書式を選択します。
先頭セル(A1)は見出しなので、「先頭行をテーブルの見出しとして使用する」にチェックをつけます。
テーブル名を入力する欄が表示されますので、テーブル名を入力します。
見出しが「野菜」なので、テーブル名も「野菜」と入力します。(これ重要です。)
それでは、他の小分類の一覧(果物、魚)も同様にテーブル化していきます。
果物一覧はオレンジ色の書式を選択し、テーブル名に「果物」と入力します。
魚一覧は青色の書式を選択し、テーブル名に「魚」と入力します。
これで下準備が終わりましたので、入力欄の「データの入力規則」を設定していきます。
(3)大分類のリストを作成する
それでは、実際の入力欄の大分類リストを作成します。
大分類リストの作り方は、大分類リストを設定するセル(E2)を選択し、「データの入力規則」を設定します。
「入力値の種類」で「リスト」を選択し、「元の値」に大分類のセル範囲(A1からC1)を選択します。
こうすることにより、大分類リストには、「野菜、果物、魚」のリストが表示されるようになります。
ここで指定したリスト「野菜、果物、魚」は小分類の一覧から作成したテーブル名となります。
(4)小分類のリストを作成する
それでは、実際の入力欄の小分類リストを作成します。
小分類のリストを設定したいセル(F2)を選択し、「データの入力規則」を設定します。
「入力値の種類」で「リスト」を選択し、「元の値」に「=INDIRECT($E2)」を入力します。
「$E2」は大分類リストのセルです。
こうすることにより、大分類リストで選択されたテーブル名がINDIRECT関数に渡されます。
そうすることにより、小分類リストの中身が選択されたテーブルの中身になります。
INDIRECT関数は以下のように指定します。
=INDIRECT(セル番地またはテーブル名)
文字列は、ダブルクォーテーションで囲って指定します。
例えば、A1なら”A1″と指定します。
INDIRECT関数の動きは、指定されたセル番地やテーブルの中身を表示します。
E2セルを「E3からE5」にコピーしてください。
また、F2セルを「F3からF5」にコピーしてください。
そうすれば、3行目から5行目でも絞り込みリストが使えるようになります。
テーブルのリストを追加する(メンテナンス方法)
テーブルのリストを追加する方法を説明します。
小分類リストの元データとなっているテーブルのリストを追加する場合、テーブルの一番下に値を入力するだけです。
上記の図では、野菜テーブルに「ネギ、レタス」を追加しています。
それでは、小分類リストに「ネギ、レタス」が追加されたか確認してみましょう。
自動的に小分類リストに「ネギ、レタス」が追加されています。
リストの元データにテーブルを利用することにより、メンテナンスがとても簡単になりました。
もし、「名前付きセル」を元データとして利用していた場合、「名前付きセル」のセル範囲を変更しなければいけません。
これで、メンテナンスが楽な絞り込みリストが完成しました。
テーブルとINDIRECT関数を使って、絞り込みリストを作成する方法でした。
ぜひ利用してみてください。
以上です。