エクセルで高度な入力規則!動的なドロップダウンリストの作り方

Excel小技part2

こんにちは!今回は少し高度な入力規則とドロップダウンリストの使い方をご紹介します。 エクセルで複雑な入力フォームを作りたいとき、次のような機能が役立ちます。

  • 1つ目のリスト選択に応じて、2つ目のリスト内容を変動させる「変動リスト」
  • リストの項目が増減しても、自動で対応できる「動的リスト」の設定

これをマスターすれば、例えば「都道府県を選ぶと市区町村の選択肢が変わる」「商品カテゴリーに応じて製品名のリストが変わる」といった柔軟なフォームを作れるようになりますよ!今回はテーブルと関数の2つの方法を詳しく解説します。

変動リストの作り方(1つ目の選択で2つ目が変動)

まずは1つ目のリストに応じて2つ目のリストの内容を変動させる方法です。 例えば、「カテゴリー」列で「食品」を選ぶと「リンゴ」「オレンジ」などが2つ目のリストに表示され、「文房具」を選ぶと「ペン」「ノート」が表示されるようにします。

手順

  1. データの準備 別のシートに以下のようなデータを用意します(例:「リストデータ」シート)。
    • A列:カテゴリー(食品、文房具など)
    • B列以降:各カテゴリーのアイテム(例:食品 → リンゴ、オレンジ;文房具 → ペン、ノート)
  2. 名前の定義 「リストデータ」シートで、各カテゴリーごとに名前を定義します。
    • 食品のリスト範囲(例:B2:B11)を選択し、「食品」という名前を定義。
    • 文房具のリスト範囲(例:C2:C11)を選択し、「文房具」という名前を定義。
    • 雑貨のリスト範囲(例:D2:D11)を選択し、「雑貨」という名前を定義。
  3. ドロップダウンリストの設定 1つ目のリスト(カテゴリー)の設定:リストシートを使用
    • A2セルを選択「データ」タブ → 「データの入力規則」をクリック。
    • 「条件の種類」を「リスト」に設定し、「元の値」欄に「食品,文房具,雑貨」と入力。
    2つ目のリスト(アイテム)の設定:
    • 「データの入力規則」を開き、「条件の種類」を「リスト」に設定。
    • 「元の値」欄に「=INDIRECT(A2)」と入力(A2が1つ目のリストのセル)。

これで、1つ目のリストで選んだカテゴリーに応じて、2つ目のリスト内容が動的に変化します。

リスト項目が増減しても自動対応する方法

方法: OFFSET関数を使う

  1. データの準備 別のシートにリスト項目を入力します(例:A列に「リンゴ」「オレンジ」「バナナ」)。
  2. 名前の定義 「数式」タブ → 「名前の定義」をクリックし、「名前」を設定(例:「変動リスト」)。
  3. 「参照範囲」欄に以下を入力: =OFFSET(リストデータ!$A$2,0,0,COUNTA(リストデータ!$A$2:$A$100),1)
  4. ドロップダウンリストの設定 「データの入力規則」を開き、「条件の種類」を「リスト」に設定。 「元の値」欄に「=変動リスト」と入力します。

これで、リスト項目を追加しても、自動でリスト内容が更新されます。

まとめ

今回ご紹介した動的なリスト作成方法を使えば、エクセルの入力フォームがぐっと便利になります。 1つ目の選択に応じてリスト内容を切り替えたり、リスト項目の増減に柔軟に対応できたりすることで、業務の効率化が図れますよ。 次回は「フィルターと高度なフィルター」を使ったデータ絞り込み術をご紹介します。お楽しみに!

コメント