見出し画像

Excelで3階層で絞り込み表示するプルダウンを作成

やりたいこと

エクセルのプルダウン入力を大分類>小分類>商品名の3層で絞り込み表示して入力できるようにしたい。
大分類の選択で小分類を絞り込み表示して、大分類と小分類の選択で、商品名を絞り込み表示するプルダウンを実装します。
※Excel2021とMicrosoft365バージョンで動作確認しています。
※Excel2019以前のバージョンではFILTER関数が使えないので動作しません。

デモ画面

デモ画面は、大分類、小分類、商品名のある商品マスタ(カフェメニュー)を準備して、入力フォームの大分類の選択で小分類を絞り込み表示し、大分類と小分類の値が一致した商品名を絞り込み表示するという機能を実現しています。

デモ画面

設定方法の説明

ステップ1(テーブル化)

商品マスタ(大分類、小分類、商品名、価格)のデータを準備します。
商品マスタの入力範囲を選択した状態でメニューから「ホーム>スタイル>テーブルとして書式設定」を選択して、任意の書式で商品マスタのデータ領域を「テーブル化」します。
選択範囲の1行目が「見出し行」になる様に範囲を指定して下さい。

商品マスタをテーブル化

ステップ2(列に名前の設定)

テーブル化した商品マスタの先頭行を用いて各列に名前を付けます。
商品マスタ範囲の任意の位置を選択した状態で、「数式>名前の管理>選択範囲から作成」と操作して「選択範囲から名前を作成」のダイアログから「上端行」を選択してOKボタンをクリックします。
これで商品マスタの各列に見出し行の名前が定義されました。
名前定義で、各列のセル範囲を名前で参照することができます。
(例)大分類=セル範囲(A13:A99

商品マスタの各列に見出し行の名前を定義

ステップ3(フィルター領域の設定)

テーブル化した商品マスタから、大分類、小分類に一致するデータを抜き出すフィルター領域を作成します。
大分類の1行目(A7セル)に「=UNIQUE(大分類)」と入力します
小分類の1行目(B7セル)に「=UNIQUE(FILTER(小分類,大分類=A3,""))」と入力します。
商品名の1行目(C7セル)に「=UNIQUE(FILTER(品名,小分類=B3,""))」と入力します。

UNIQUE(セル範囲)関数は、セル範囲から重複しない値を抽出します。FILTER(セル範囲, 条件, 一致しない場合の値)関数は、セル範囲から、条件に一致する値を抜き出します。
=UNIQUE(FILTER(品名,小分類=B3,""))という関数は、FILTER関数で品名のセル範囲から、小分類のセル範囲の値がB3セルの値と一致する値だけを抜き出して、UNIQUE関数で重複を取り除いたリスト値にします。
※Excel2019以前のバージョンではFILTER関数が使えないので動作しません。

ステップ4(大分類の設定)

次に入力フォームの大分類(A3セル)に入力規則を設定します。
メニューから「データ>データツール>データの入力規則」を選択します。

データの入力規則のウィンドで、
入力値の種類(A):リストを選択
元の値(S):=$A$7#
 ※A7セルをクリックして、最後に「#」記号を付けます

ステップ5(小分類の設定)

次に入力フォームの小分類(B3セル)に入力規則を設定します。
メニューから「データ>データツール>データの入力規則」を選択します。

データの入力規則のウィンドで、
入力値の種類(A):リストを選択
元の値(S):=$B$7# ※B7セルをクリックして、最後に「#」記号を付けます。

ステップ6(商品名の設定)

最後に入力フォームの商品名(C3セル)に入力規則を設定します。
メニューから「データ>データツール>データの入力規則」を選択します。

データの入力規則のウィンドで、
入力値の種類(A):リストを選択
元の値(S):=$C$7# ※C7セルをクリックして、最後に「#」記号を付けます。

以上で設定は完了です。


ファイルのダウンロード

完成版のエクセルファイルをアップロードしておきます。
ダウンロードして自由にお使いください。
※Excel2021とMicrosoft365バージョンで動作確認しています。
※Excel2019以前のバージョンではFILTER関数が使えないので動作しません。


最後に

今回は、エクセルのプルダウン入力の小テクニックの紹介でした。
3階層ではなく2階層の場合は、ステップ6を省略すればOKです。
階層別絞り込み選択機能のプルダウンは、分類別の商品名や部署別の従業員名等の選択入力を簡易にするのに便利な機能ですね。

ところで、エクセルのプルダウンはドロップダウンと呼ばれることもあり、両者は同じ意味なので区別する必要はないそうです。

お客様から「エクセルで出来るならkintoneでも出来ますか?」という質問を頂いたので、次回は、kintoneアプリのドロップダウンリストに3層絞り込み表示機能を実装するをカスタマイズ事例を紹介する予定です。
※2024年6月4日に記事を公開しました。

今回も、最後まで読んでいただいたありがとうございました。

よろしければサポートお願いします! いただいたサポートは、note記事制作の活動費に使わせていただきます!