メインコンテンツへスキップ

3種類の複数列ドロップダウンリスト – ステップバイステップガイド

Author: Siluvia Last Modified: 2025-05-23

excel ドロップダウンリスト 複数列」をGoogleで検索する場合、次のいずれかのタスクを実現したいと考えているかもしれません:

このチュートリアルでは、これらの3つのタスクを達成するためのステップバイステップの手順を説明します。


複数列に基づく依存ドロップダウンリストを作成する

 

下のGIF画像に示すように、大陸用のメインドロップダウンリスト、そのリストで選択された大陸に基づいて国を含むセカンダリドロップダウンリスト、さらにそのリストで選択された国に基づいて都市を含む第三のドロップダウンリストを作成したいとします。このセクションの方法は、このタスクを達成するのに役立ちます。


複数列に基づく依存ドロップダウンリストを数式を使って作成する

ステップ1: メインドロップダウンリストを作成する

1. ドロップダウンリストを挿入したいセル(ここではG9:G13を選択)を選択し、「データ」タブに移動して「データの入力規則」>「データの入力規則」をクリックします。

click Data Validation form Data tab

2. 「データの入力規則」ダイアログボックスで、次のように設定してください。

1) 「設定」タブをクリックします;
2) 「許可」ドロップダウンリストで「リスト」を選択します;
3) 「元の値」ボックスをクリックし、ドロップダウンリストに表示したい大陸を含むセルを選択します;
4) 「OK」ボタンをクリックします。スクリーンショットをご覧ください:
configure the settings in the dialog box to create the first drop-down list
ステップ2: セカンダリドロップダウンリストを作成する

1. セカンダリドロップダウンリストに表示したい項目を含む範囲全体を選択します。「数式」タブに移動し、「 選択範囲から作成」をクリックします。

Select the entire range and click Create from Selection

2. 「選択範囲から名前を作成」ダイアログボックスで、「最上行」のみチェックを入れ、「OK」ボタンをクリックします。

check the Top row box in the dialog box

3. セカンダリドロップダウンリストを挿入したいセルを選択し、「データ」タブに移動して「データの入力規則」>「データの入力規則」をクリックします。

4. 「データの入力規則」ダイアログボックスで、以下を行う必要があります:

1) 「設定」タブに留まります;
2) 「許可」ドロップダウンリストで「リスト」を選択します;
3) 「元の値」ボックスに次の数式を入力します。
=INDIRECT(SUBSTITUTE(G9," ","_"))
ここで、G9はメインドロップダウンリストの最初のセルです。
4) 「OK」ボタンをクリックします。
configure the settings in the dialog box to create the secondary drop-down list

5. このドロップダウンリストのセルを選択し、オートフィルハンドルをドラッグして同じ列内の他のセルにも適用します。

これでセカンダリドロップダウンリストが完成しました。メインドロップダウンリストで大陸を選択すると、セカンダリドロップダウンリストにはその大陸の国のみが表示されます。

The secondary drop-down list is complete
ステップ3: 第三のドロップダウンリストを作成する

1. 第三のドロップダウンリストに表示したい値を含む範囲全体を選択します。「数式」タブに移動し、「 選択範囲から作成」をクリックします。

Select the entire range and click Create from Selection

2. 「選択範囲から名前を作成」ダイアログボックスで、「最上行」のみチェックを入れ、「OK」ボタンをクリックします。

check the Top row box in the dilaog box

3. 第三のドロップダウンリストを挿入したいセルを選択し、「データ」タブに移動して 「データの入力規則」 > 「データの入力規則」をクリックします。

4. 「データの入力規則」ダイアログボックスで、以下を行う必要があります:

1) 「設定」タブに留まります;
2) 「許可」ドロップダウンリストで「リスト」を選択します;
3) 「元の値」ボックスに次の数式を入力します。
=INDIRECT(SUBSTITUTE(H9," ","_"))
ここで、H9はセカンダリドロップダウンリストの最初のセルです。
4) 「OK」ボタンをクリックします。
configure the settings in the dialog box to create the third drop-down list

5. このドロップダウンリストのセルを選択し、 オートフィルハンドルをドラッグして同じ列内の他のセルにも適用します。

これで都市を含む第三のドロップダウンリストが完成しました。セカンダリドロップダウンリストで国を選択すると、第三のドロップダウンリストにはその国の都市のみが表示されます。

The third drop-down list is created

上記の方法は一部のユーザーにとって煩雑である可能性があります。より効率的で簡単な解決策が必要な場合は、次の方法を数回のクリックで実現できます。


Kutools for Excel を使って複数列に基づく依存ドロップダウンリストを数回のクリックで作成する

下のGIF画像は、Kutools for Excel の「動的ドロップダウンリスト」機能の手順を示しています。

ご覧の通り、操作全体は数回のクリックで完了できます。必要なことは以下の通りです:

1. 機能を有効にする;
2. 必要なモードを選択する:2レベルまたは3-5レベルのドロップダウンリスト;
3. 依存ドロップダウンリストを作成する基になる列を選択する;
4. 出力先の範囲を選択する。

上のGIF画像は、2レベルのドロップダウンリストを作成する手順を示しています。2つ以上のレベルを持つドロップダウンリストを作成したい場合は、詳細はこちらをクリックしてください 。または、 30日間の無料試用版をダウンロードしてください

Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...

Excelのドロップダウンリストで複数選択を行う

このセクションでは、Excelのドロップダウンリストで複数選択を行うための2つの方法を提供します。


VBAコードを使用してExcelのドロップダウンリストで複数選択を行う

次のVBAスクリプトは、重複なしでExcelのドロップダウンリストで複数選択を行うのに役立ちます。以下の手順に従ってください。

ステップ1: VBAコードエディターを開き、コードをコピーする

1. シートタブに移動し、右クリックしてコンテキストメニューから「コードの表示」を選択します。

right click thes heet tab and select View Code

2. その後、「Microsoft Visual Basic for Applications」ウィンドウがポップアップ表示されるので、Sheet (Code) エディターに次のVBAコードをコピーします。

copy and paste the code into the module

VBAコード: 重複なしでドロップダウンリストで複数選択を許可する

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updated by Extendoffice 2019/11/13
    Dim xRng As Range
    Dim xValue1 As String
    Dim xValue2 As String
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
    If xRng Is Nothing Then Exit Sub
    Application.EnableEvents = False
    If Not Application.Intersect(Target, xRng) Is Nothing Then
        xValue2 = Target.Value
        Application.Undo
        xValue1 = Target.Value
        Target.Value = xValue2
        If xValue1 <> "" Then
            If xValue2 <> "" Then
                If xValue1 = xValue2 Or _
                   InStr(1, xValue1, ", " & xValue2) Or _
                   InStr(1, xValue1, xValue2 & ",") Then
                    Target.Value = xValue1
                Else
                    Target.Value = xValue1 & ", " & xValue2
                End If
            End If
        End If
    End If
    Application.EnableEvents = True
End Sub
ステップ2: コードをテストする

コードを貼り付けた後、Alt + キーを押してVisual Editorを閉じ、ワークシートに戻ります。

ヒント: このコードは現在のワークシート内のすべてのドロップダウンリストに適用されます。ドロップダウンリストを含むセルをクリックし、ドロップダウンから項目を一つずつ選択して動作を確認してください。

注意: ドロップダウンリストで複数選択を許可し、再度選択したときに既存の項目を削除したい場合は、VBAコードを使用してこれを実現することもできます。詳細は、こちらをクリックしてステップバイステップのチュートリアルに従ってください

Kutools for Excel を使ってExcelのドロップダウンリストで複数選択を数回のクリックで行う

VBAコードには多くの制限があります。VBAスクリプトに精通していない場合、ニーズに合わせてコードを修正するのは難しいです。ここでは、強力な機能である「複数選択可能なドロップダウンリスト」をおすすめします。これにより、ドロップダウンリストから簡単に複数の項目を選択できます。

Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...

Kutools for Excel をインストール後、「Kutools」タブに移動し、「ドロップダウンリスト」>「複数選択ドロップダウンリスト」を選択します。次のように設定します。

  1. 複数の項目を選択する必要があるドロップダウンリストを含む範囲を指定します。
  2. ドロップダウンリストのセル内で選択された項目の区切り文字を指定します。
  3. クリック OK 設定を完了します。
結果

これで、指定された範囲内のドロップダウンリストのあるセルをクリックすると、その横にリストボックスが表示されます。単純に項目の隣にある「+」ボタンをクリックしてドロップダウンセルに追加し、「-」ボタンをクリックして不要になった項目を削除します。以下のデモをご覧ください:

注意:
  • 区切り文字を挿入後に改行するオプションをチェックすると、セル内に選択された項目を垂直に表示できます。水平にリスト表示したい場合は、このオプションをチェックしないでください。
  • ドロップダウンリストに検索バーを追加したい場合は、「検索機能を有効にする」オプションをチェックします。
  • この機能を適用するには、まずKutools for Excelをダウンロードしてインストールしてください。

ドロップダウンリストに複数列を表示する

 

下のスクリーンショットに示すように、このセクションではドロップダウンリストに複数列を表示する方法を紹介します。

display multiple columns in a drop-down list

デフォルトでは、データ検証ドロップダウンリストは1列の項目しか表示しません。ドロップダウンリストに複数列を表示するには、データ検証ドロップダウンリストの代わりにコンボボックス(ActiveXコントロール)を使用することをお勧めします。

ステップ1: コンボボックス(ActiveXコントロール)を挿入する

1. 「開発」タブに移動し、「挿入」>「コンボボックス(ActiveXコントロール)」をクリックします。

click Insert > Combo Box from Developer tab

ヒント: リボンに「開発」タブが表示されていない場合、このチュートリアル「開発タブを表示」の手順に従って表示できます。

2. ドロップダウンを表示したいセルにコンボボックスを描画します。

ステップ2: コンボボックスのプロパティを変更する

1. コンボボックスを右クリックし、コンテキストメニューから「プロパティ」を選択します。

Right click the Combo Box then select Properties

2. 「プロパティ」ダイアログボックスで、次のように設定します。

1) 「ColumnCount」フィールドに、ドロップダウンリストに表示したい列数を入力します;
2) 「ColumnWidths」フィールドで、各列の幅を定義します。ここでは、各列の幅を80pt;100pt;80pt;80pt;80ptと定義します;
3) 「LinkedCell」フィールドで、ドロップダウンで選択したのと同じ値を出力するセルを指定します。このセルは次のステップで使用します;
4) 「ListFillRange」フィールドに、ドロップダウンリストに表示したいデータ範囲を入力します。
5) 「ListWidth」フィールドで、ドロップダウンリスト全体の幅を指定します。
6) 「プロパティ」ダイアログボックスを閉じます。
configure the settings in the Properties pane
ステップ3: ドロップダウンリストに指定された列を表示する

1. 「開発」タブの下で、「デザインモード」アイコンをクリックして デザインモードをオフにします。

turn off the Design Mode

2. コンボボックスの矢印をクリックすると、リストが展開され、指定された列数がドロップダウンに表示されます。

注意: 上のGIF画像でわかるように、ドロップダウンリストに複数列が表示されていますが、セルには選択された行の最初の項目のみが表示されます。他の列の項目を表示したい場合は、次の数式を適用してください。
ステップ4: 特定のセルに他の列の項目を表示する
ヒント: 他の列から正確に同じ形式のデータを返すために、以下の操作の前後に結果セルの形式を変更する必要があります。この例では、C11の形式を日付形式に、C14の形式を通貨形式に事前に変更しています。

1. コンボボックスの下のセルを選択し、次の数式を入力してEnterキーを押して、同じ行の第2列の値を取得します。

=IFERROR(VLOOKUP(B1,B3:F6,2,FALSE),"")
apply formula to get the data from second column

2. 第3列、第4列、第5列の値を取得するには、次の数式を1つずつ適用します。

=IFERROR(VLOOKUP(B1,B3:F6,3,FALSE),"")
=IFERROR(VLOOKUP(B1,B3:F6,4,FALSE),"")
=IFERROR(VLOOKUP(B1,B3:F6,5,FALSE),"")
apply formulas to get the data from other columns one by one
注意:
最初の数式 =IFERROR(VLOOKUP(B1,B3:F6,2,FALSE),"") を例に取ると、
1) B1は「プロパティ」ダイアログボックスで「LinkedCell」として指定したセルです。
2) 数字の2は、テーブル範囲「B3:F6」の第2列を表します。
3) ここで使用されているVLOOKUP関数は、B1の値を検索し、範囲B3:F6の第2列の値を返します。
4) IFERRORは、VLOOKUP関数のエラーを処理します。VLOOKUP関数が#N/Aエラーを評価した場合、IFERROR関数はエラーをnullとして返します。

関連記事

Excelのドロップダウンリストに入力時に自動補完する
データ検証ドロップダウンリストに多数の値がある場合、適切なものを検索するためにリストをスクロールするか、リストボックスに直接完全な単語を入力する必要があります。ドロップダウンリストで最初の文字を入力した際に自動補完できる方法があれば、すべてが簡単になります。このチュートリアルでは、その問題を解決する方法を提供します。

Excelで別のブックからドロップダウンリストを作成する
ワークブック内のワークシート間でデータ検証ドロップダウンリストを作成するのは非常に簡単です。しかし、データ検証に必要なリストデータが別のブックにある場合はどうしますか?このチュートリアルでは、Excelで別のブックからドロップダウンリストを作成する方法を詳しく学びます。

Excelで検索可能なドロップダウンリストを作成する
多数の値を持つドロップダウンリストの場合、適切な値を見つけるのは簡単ではありません。以前、ドロップダウンボックスに最初の文字を入力した際に自動補完する方法を紹介しました。自動補完機能に加えて、ドロップダウンリストを検索可能にすることで、リスト内の適切な値を見つける効率を向上させることができます。このチュートリアルでは、ドロップダウンリストを検索可能にする方法を紹介します。

Excelのドロップダウンリストで値を選択時に他のセルを自動入力する
例えば、セル範囲B8:B14の値に基づいてドロップダウンリストを作成したとします。ドロップダウンリストで任意の値を選択すると、セル範囲C8:C14の対応する値が選択したセルに自動的に入力されるようにしたいとします。この問題を解決するために、このチュートリアルの方法が役立ちます。

ドロップダウンリストに関するその他のチュートリアル...

最高のオフィス生産性ツール

🤖 Kutools AI アシスタント: データ分析を革命化する: インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データを分析しグラフを生成  |  拡張機能を呼び出す
人気の機能: 重複を見つけてハイライトまたはマーキング   |  空白行を削除   |  データを失わずに列またはセルを統合   |   丸める ...
スーパーLOOKUP: 複数条件のVLookup    複数値のVLookup  |   複数シートの検索   |   ファジーマッチ ....
高度なドロップダウンリスト: ドロップダウンリストを迅速に作成   |  依存ドロップダウンリスト   |  マルチセレクトドロップダウンリスト ....
列管理: 特定の数の列を追加  |  列を移動  |  非表示列の可視ステータスを切り替え  |  範囲と列を比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   強化された数式バー    ワークブック & ワークシート管理   |  オートテキスト ライブラリ (Auto Text)   |  日付ピッカー   |  データの統合   |  セルの暗号化/復号化    リストで電子メールを送信   |  スーパーフィルター   |   特殊フィルタ (太字/斜体/取り消し線をフィルタリング...) ...
トップ15のツールセット12 のテキストツール (テキストの追加, 特定の文字を削除, ...)  |  50以上 のグラフ の種類 (ガントチャート, ...)  |  40以上の実用的な 数式 (誕生日に基づいて年齢を計算する, ...)  |  19 の挿入ツール (QRコードの挿入, パスから画像を挿入, ...)  |  12 の変換ツール (単語に変換する, 通貨変換, ...)  |  7 の統合 & セルの分割ツール (高度な行のマージ, セルの分割, ...)  |  ...さらに多く

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、300以上の高度な機能を提供し、生産性を向上させ、保存時間を節約します。  最も必要な機能を入手するにはここをクリック...


Office TabはOfficeにタブインターフェイスをもたらし、作業を非常に簡単にします

  • Word、Excel、PowerPoint、Publisher、Access、Visio、Projectでタブ付きの編集と読み取りを有効にします。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を50%向上させ、毎日数百回のマウスクリックを減らします!