CoreGPT
Microsoft 365読了時間 18分

Excel でプルダウンリストを作る方法(自動で更新されるリストの作り方も解説)

Excel のセルにデータの入力規則でプルダウンリストを追加する方法を解説します。直接入力・セル範囲・テーブルから自動で増えるリストを作る方法、連動するプルダウン、矢印が出ない・更新されないときの対処法も紹介します。

Excel でプルダウンリストを作る方法(自動で更新されるリストの作り方も解説)

Excel でプルダウンリスト(ドロップダウンリスト)を作るには、セルを選択して[データ]→[データの入力規則]を開き、[入力値の種類]を[リスト]にして、[元の値]に項目をカンマ区切りで入力するか、項目が入っているセルを選択します。[OK]をクリックすると、各セルにリストを開く矢印が表示されます。

重要なのは、項目をどこから取得するかという点です。直接入力したリストは手軽ですが、後から変更しづらくなります。リストが増えていく場合は、項目を Excel のテーブルに入れておけば、すべてのプルダウンが新しい項目を自動的に取り込みます。

なお、数式は英語版の Excel と同じ形で示しています(日本語版の Excel でも関数名は英語のまま使えます)。

項目の取得元[元の値]ボックスの例自動で更新されるか向いている用途
直接入力Yes,No,Maybeされない(手動で編集)変更のない短いリスト
セル範囲=$F$2:$F$5範囲内を編集した場合のみシート上に置く固定のリスト
Excel のテーブルテーブルの列のセルを選択される(行を追加すると)時間とともに増えるリスト
スピル範囲=$H$2#される(UNIQUE などの数式から)既存のデータから作るリスト
連動リスト=INDIRECT($A2)最初の選択内容によるカテゴリ、次に項目

プルダウンリストの作り方を手順で解説

この手順は、Windows 版の Microsoft 365 の Excel、Excel 2021、2019 で使えます。Mac と Excel for the web でもほぼ同じです(違いは後述します)。

  1. リストの項目を、空白のセルを入れずに 1 つの列に入力します。たとえば F2:F5 に 未着手、進行中、完了、保留 と入力します。「リスト」という名前の別シートに置くと便利です。
  2. プルダウンを表示したいセルを選択します(例:C2:C50)。
  3. [データ]→[データの入力規則](データ ツール グループ)を開きます。Windows のキーボード操作は Alt, A, V, V(英語版の場合)です。
  4. [設定]タブで、[入力値の種類]を[リスト]にします。
  5. [元の値]ボックスをクリックし、シート上で項目(見出しを除く F2:F5)を選択します。Excel が =$F$2:$F$5 と入力します。
  6. [ドロップダウン リストから選択する]にチェックが入っていることを確認します。空のセルを許可してよい場合は、[空白を無視する]のチェックも入れたままにします。
  7. [OK]をクリックします。

Excel の[データの入力規則]ダイアログの[設定]タブ。[入力値の種類]が[リスト]、[元の値]が =$F$2:$F$5 で、[空白を無視する]と[ドロップダウン リストから選択する]の両方にチェックが入っている

これらのセルのいずれかを選択すると、横に矢印が表示されます。矢印をクリックするか、Alt+↓(Mac では Option+↓)を押すと、リストが開きます。

タスク、担当者、ステータスの列がある Excel のタスク管理表。セル C5 のステータスのプルダウンが開き、「未着手」「進行中」「完了」「保留」が表示されている

セルを選択せずに項目を直接入力する

短くて変わらないリストなら、[元の値]に直接入力できます。Yes,No,Maybe のように入力します。カンマの後ろにスペースを入れないでください。スペースが各項目の一部になってしまいます。地域の設定で小数点にカンマを使う環境では、代わりにセミコロンが必要な場合があります(Yes;No;Maybe)。[元の値]ボックスに入力できるのは 255 文字までなので、それより長いリストはシート上に置いてください。

Excel for Mac と Excel for the web の場合

  • Mac:[データ]→[データの入力規則](バージョンによっては、ツール グループで[入力規則](Validate)と表示されます)。ダイアログのタブは同じ 3 つです。
  • Web:[データ]→[データの入力規則](ウィンドウ幅が狭い場合は[データ ツール]の中)。あとは同じ[入力値の種類]→[リスト]の手順です。
  • モバイル: iPhone、iPad、Android のアプリでは、パソコンで作成したプルダウンから選択できます。

テーブルを使ってリストを自動で増やす

$F$2:$F$5 のような通常の範囲には、F6 に入力した項目は含まれません。リストをテーブルにすれば、自動で含まれるようになります。

  1. リスト内のセルをクリックして Ctrl+T(Mac では Cmd+T)を押します。[先頭行をテーブルの見出しとして使用する]にチェックを入れて[OK]をクリックします。
  2. 上記と同じようにプルダウンを作成し、[元の値]でテーブルのデータ セル(見出しを除く)を選択します。
  3. テーブルのすぐ下の行に新しい項目を入力します。テーブルが拡張され、それを元にしたすべてのプルダウンに新しい項目が表示されます。

=Table1[Status] のようなテーブル参照を[元の値]に直接入力することはできず、Excel に拒否されます。セルを選択するか、=INDIRECT("Table1[Status]") を使ってください。

名前付き範囲も使えます。項目を選択して、[名前ボックス](数式バーの左)に Statuses のような名前を入力して Enter キーを押し、元の値として =Statuses を使います。

UNIQUE で既存のデータから動的なリストを作る

選択肢を既存のデータから取得したい場合(たとえば A 列のすべての顧客名)は、数式でリストを作ります。Microsoft 365 の Excel、Excel 2021 以降、または Excel for the web で次のようにします。

  1. 空のセル(たとえば H2)に =SORT(UNIQUE(FILTER(A2:A500,A2:A500<>""))) と入力します。並べ替えられて重複のないリストが H2 から下にスピルします(FILTER の部分は、空のセルが 0 として表示されるのを防ぎます)。
  2. [元の値]を =$H$2# にして、プルダウンを作成します。

# は、スピル範囲全体を、どれだけ長くなっても対象にするという指定です。そのため、新しい名前が自動的にプルダウンに追加されます。UNIQUE を[元の値]ボックスに直接入れることはできないため、ヘルパー セルが必要になります。UNIQUE について詳しくは、Excel 重複削除のやり方5選をご覧ください。

別のシートのリストを使う

[元の値]ボックスがアクティブな状態で、別のシートのタブをクリックしてセルを選択すると、=リスト!$A$2:$A$10 のような参照が入力されます。その後、「リスト」シートを非表示にしておけば(タブを右クリック→[非表示])、誤って編集されるのを防げます。別のブックを参照するリストは、そのブックを開いている間しか機能しないため、リストは同じファイルに置いてください。

INDIRECT で連動する(階層型の)プルダウンを作る

連動するプルダウンは、別のセルの内容に応じて選択肢が変わります。A 列で 果物 を選ぶと、B 列には果物だけが表示されます。

  1. 「リスト」シートに、カテゴリを見出しにして、その下に項目を並べます。たとえば D1 に 果物 とし、その下にリンゴ、バナナ、サクランボ。E1 に 野菜 とし、その下にニンジン、ネギ、エンドウ。
  2. D1:E4 を選択し、[数式]→[選択範囲から作成]を開きます。[上端行]だけにチェックを入れて[OK]をクリックします。Excel が、見出しの名前で各列の名前付き範囲を作成します。
  3. メインのシートの A2 に、2 つの見出しセル =リスト!$D$1:$E$1(カテゴリ名)を元の値とする通常のプルダウンを作成します。
  4. B2 を選択し、[データ]→[データの入力規則]を開いて[リスト]を選び、元の値に =INDIRECT($A2) と入力します。
  5. 元の値の評価結果が現在エラーになるという警告が表示されたら、[はい]をクリックします。これは A2 がまだ空だからです。

名前にはスペースを含められないため、[選択範囲から作成]を使うと「Dairy products」は Dairy_products になります。スペースを含むカテゴリには、代わりに =INDIRECT(SUBSTITUTE($A2," ","_")) を使います。

入力時メッセージとエラー メッセージを追加する

  • 入力時メッセージ:[セルの選択時に入力時メッセージを表示する]にチェックを入れ、タイトルと短いメッセージ(例:「タスクのステータスを選んでください」)を入力します。セルが選択されるたびに表示されます。
  • エラー メッセージ:[無効なデータが入力されたらエラー メッセージを表示する]にチェックを入れ、[スタイル]を選びます。[停止]ではリストにないものはすべてブロックされ、[注意]と[情報]ではメッセージが表示されますが、入力は許可されます。

入力規則は、ユーザーが入力した内容だけをチェックします。セルに貼り付けると、内容と一緒にプルダウンも上書きされる点に注意してください。

入力して検索できるプルダウン

最新の Microsoft 365 の Excel では、プルダウンのセルに文字を入力すると、その文字を含む項目だけにリストが絞り込まれるため、長いリストの操作がずっと速くなります。Excel 2021 以前にはこの機能はありません。

プルダウンリストを編集・コピー・削除する

項目を追加・変更する。 テーブルの場合は、すぐ下に新しい項目を入力します。セル範囲の場合は、セルを編集し、範囲が長くなったときは[データ]→[データの入力規則]を開き直して[元の値]を調整します。直接入力したリストの場合は、[元の値]のテキストを編集します。[同じ入力規則が設定されたすべてのセルに変更を適用する]にチェックを入れると、同じ設定のプルダウンをすべて一度に更新できます。

プルダウンをほかのセルにコピーする。 フィル ハンドルを下にドラッグするか、セルをコピーして貼り付け先を選択し、[ホーム]→[貼り付け]→[形式を選択して貼り付け]→[入力規則]を選ぶと、値を含めずにプルダウンだけをコピーできます。

プルダウンを削除する。 セルを選択し、[データ]→[データの入力規則]を開いて[すべてクリア]をクリックし、[OK]をクリックします。セルに入力済みの値はそのまま残ります。プルダウンが設定されているすべてのセルを探すには、[ホーム]→[検索と選択]→[データの入力規則]を使います。

プルダウンが機能しない原因

  • 矢印が表示されない。[データ]→[データの入力規則]を開いて[ドロップダウン リストから選択する]にチェックを入れます。矢印は、セルを選択しているときだけ表示されます。どこにも矢印が表示されない場合は、[ファイル]→[オプション]→[詳細設定]→[このブックの表示設定]で、[オブジェクトの表示]を[すべて]にしてください。
  • 新しい項目が表示されない。 元の値が固定の範囲になっています。範囲を広げるか、リストをテーブルまたはスピル範囲に変換して、自動的に増えるようにします。
  • [データの入力規則]がグレーになっている。 シートが保護されている([校閲]→[シート保護の解除])、ブックが従来の共有ブック機能を使っている、複数のシートがグループ化されている(1 つのシート タブをクリックして解除)、またはセルを編集中である(Enter または Esc キーを押す)、のいずれかです。
  • リストに空白が表示される。 元の範囲に空のセルが含まれています。範囲を狭めるか、テーブルを使ってください。
  • リストにない値が入力された。[エラー メッセージ]の[スタイル]が[注意]か[情報]になっているか、エラー メッセージがオフになっています。[停止]に切り替えてください。

よくある質問

列全体にプルダウンリストを追加するには? データの入力規則を開く前に、C2:C1000 のように必要な列の範囲を選択します。データがテーブル内にある場合は、列に適用したプルダウンが新しい行にも自動的に引き継がれます。

Excel のプルダウンリストで複数選択はできますか? 標準のデータの入力規則ではできません。1 つのセルに保持できる選択は 1 つだけです。複数の値を選ぶには、VBA マクロか、選択肢ごとに 1 列ずつ設ける別のレイアウトが必要です。

プルダウンリストには何項目まで設定できますか? セルから作るリストは数千項目まで設定できますが、長すぎるとスクロールしづらくなります。直接入力したリストは、[元の値]ボックスの 255 文字という制限を受けます。

「はい」と「いいえ」のプルダウンを作るには?[入力値の種類]を[リスト]にして、[元の値]に はい,いいえ と入力します。

値は残したままプルダウンだけを削除するには? セルを選択し、[データ]→[データの入力規則]→[すべてクリア]の順に進んで[OK]をクリックします。現在の値は、通常のテキストとして残ります。

リストのデータをきれいに保つ

プルダウンが快適に機能するのは、元のデータが整っているときです。CoreGPT for Excel なら、「重複した顧客を削除して、国名の表記ゆれを直して」のように、整理したい内容を普通の言葉で伝えるだけで、ブックの中でそのまま実行できるため、プルダウンの元になるリストをすっきり保てます。無料で始められ、Excel for the web、Windows、Mac で利用できます。

今すぐ試す:CoreGPT for Excel

関連記事:

関連記事