Excelで複数の選択または値を含むドロップダウンリストを作成するにはどうすればよいですか?
デフォルトでは、Excelのデータ検証ドロップダウンリストで選択できる項目はXNUMXつだけです。 以下のgifに示すように、ドロップダウンリストで複数の選択を行うにはどうすればよいですか? この記事の方法は、問題の解決に役立ちます。
VBAコードを使用して複数選択したドロップダウンリストを作成する
このセクションでは、ワークシートのドロップダウンリストで複数の選択を行うのに役立つXNUMXつのVBAコードを提供します。 XNUMXつのVBAコードは次のことを実現できます。
次のVBAコードのいずれかを適用して、Excelのワークシートのドロップダウンリストで複数の選択を行うことができます。 次のようにしてください。
1.ワークシートを開くと、複数の選択を行うデータ検証ドロップダウンリストが含まれています。 シートタブを右クリックして、 コードを表示 コンテキストメニューから選択します。
2。 の中に アプリケーション向け Microsoft Visual Basic ウィンドウで、以下のVBAコードをコードウィンドウにコピーします。 スクリーンショットを参照してください:
VBAコード1:重複することなくドロップダウンリストで複数の選択を許可する
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
3。 プレス 他の + Q を閉じるためのキー アプリケーション向け Microsoft Visual Basic 窓。
これで、現在のワークシートのドロップダウンリストから複数のアイテムを選択できます。
誤ってアイテムを選択し、セル全体をクリアして最初からやり直すことなくアイテムを削除する必要があるとします。 次のVBAコード2はあなたに有利に働きます。
VBAコード2:ドロップダウンリストで重複することなく複数の選択を許可する(既存のアイテムを再度選択して削除する)
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2023/01/11
'Updated by Ken Gardner 2022/07/11
Dim xRng As Range
Dim xValue1 As String
Dim xValue2 As String
Dim semiColonCnt As Integer
Dim xType As Integer
If Target.Count > 1 Then Exit Sub
On Error Resume Next
xType = 0
xType = Target.Validation.Type
If xType = 3 Then
Application.ScreenUpdating = False
Application.EnableEvents = False
xValue2 = Target.Value
Application.Undo
xValue1 = Target.Value
Target.Value = xValue2
If xValue1 <> "" Then
If xValue2 <> "" Then
If xValue1 = xValue2 Or xValue1 = xValue2 & ";" Or xValue1 = xValue2 & "; " Then ' leave the value if only one in list
xValue1 = Replace(xValue1, "; ", "")
xValue1 = Replace(xValue1, ";", "")
Target.Value = xValue1
ElseIf InStr(1, xValue1, "; " & xValue2) Then
xValue1 = Replace(xValue1, xValue2, "") ' removes existing value from the list on repeat selection
Target.Value = xValue1
ElseIf InStr(1, xValue1, xValue2 & ";") Then
xValue1 = Replace(xValue1, xValue2, "")
Target.Value = xValue1
Else
Target.Value = xValue1 & "; " & xValue2
End If
Target.Value = Replace(Target.Value, ";;", ";")
Target.Value = Replace(Target.Value, "; ;", ";")
If Target.Value <> "" Then
If Right(Target.Value, 2) = "; " Then
Target.Value = Left(Target.Value, Len(Target.Value) - 2)
End If
End If
If InStr(1, Target.Value, "; ") = 1 Then ' check for ; as first character and remove it
Target.Value = Replace(Target.Value, "; ", "", 1, 1)
End If
If InStr(1, Target.Value, ";") = 1 Then
Target.Value = Replace(Target.Value, ";", "", 1, 1)
End If
semiColonCnt = 0
For i = 1 To Len(Target.Value)
If InStr(i, Target.Value, ";") Then
semiColonCnt = semiColonCnt + 1
End If
Next i
If semiColonCnt = 1 Then ' remove ; if last character
Target.Value = Replace(Target.Value, "; ", "")
Target.Value = Replace(Target.Value, ";", "")
End If
End If
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
End Sub
免責事項:
素晴らしいツールを使用して、複数の選択肢を持つドロップダウンリストを簡単に作成できます
ここでは、 複数選択ドロップダウンリスト の特徴 Kutools for Excel あなたのために。 この機能を使用すると、ドロップダウンリストから、指定した範囲、現在のワークシート、現在のワークブック、または開いているすべてのワークブックの複数のアイテムを必要に応じて簡単に選択できます。
申請する前に Kutools for Excelについては 最初にダウンロードしてインストールします.
1。 クリック クツール > ドロップダウンリスト > 複数選択ドロップダウンリスト > 設定を行います。 スクリーンショットを参照してください:
2。 の中に ドロップダウンリスト設定の複数選択 ダイアログボックスで、次のように構成してください。
- 2.1)適用範囲を 適用する セクション。 この場合、私は選択します 現在のワークシート から 指定された範囲 ドロップダウンリスト;
- 2.2) テキストの方向 セクションでは、ニーズに基づいてテキストの方向を選択します。
- 2.3) セパレータ ボックスに、複数の値を区切るために使用する区切り文字を入力します。
- 2.4)確認してください 重複を追加しないでください 内箱 オプション ドロップダウンリストのセルに複製を作成したくない場合は、セクション。
- 2.5)をクリックします OK ボタン。 スクリーンショットを参照してください:
3.をクリックしてください クツール > ドロップダウンリスト > 複数選択ドロップダウンリスト この機能を有効にします。
これで、現在のワークシートのドロップダウンリストまたは手順2で指定した任意のスコープから複数のアイテムを選択できます。
無料トライアルをご希望の方は(30-day) このユーティリティの クリックしてダウンロードしてください、次に、上記の手順に従って操作を適用します。
関連記事:
Excelのドロップダウンリストに入力するとオートコンプリート
大きな値を持つデータ検証ドロップダウンリストがある場合は、適切なものを見つけるためだけにリストを下にスクロールするか、リストボックスに単語全体を直接入力する必要があります。 ドロップダウンリストの最初の文字を入力するときにオートコンプリートを許可する方法があれば、すべてが簡単になります。 このチュートリアルでは、問題を解決する方法を説明します。
Excelで別のブックからドロップダウンリストを作成する
ブック内のワークシート間でデータ検証ドロップダウンリストを作成するのは非常に簡単です。 しかし、データ検証に必要なリストデータが別のブックにある場合は、どうしますか? このチュートリアルでは、Excelの別のブックからドロップファウンリストを作成する方法について詳しく学習します。
Excelで検索可能なドロップダウンリストを作成する
多数の値を持つドロップダウンリストの場合、適切な値を見つけるのは簡単な作業ではありません。 以前、ドロップダウンボックスに最初の文字を入力したときにドロップダウンリストをオートコンプリートする方法を導入しました。 オートコンプリート機能に加えて、ドロップダウンリストを検索可能にして、ドロップダウンリストで適切な値を見つける作業効率を高めることもできます。 ドロップダウンリストを検索可能にするには、このチュートリアルの方法を試してください。
Excelのドロップダウンリストで値を選択すると、他のセルに自動入力されます
セル範囲B8:B14の値に基づいてドロップダウンリストを作成したとします。 ドロップダウンリストで任意の値を選択する場合、セル範囲C8:C14の対応する値が選択したセルに自動的に入力されるようにします。 問題を解決するために、このチュートリアルの方法はあなたに有利になります。
最高のオフィス生産性ツール
Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます
- 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
- スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
- セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
- [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
- 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
- テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
- スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
- ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
- 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作業をはるかに簡単にします
- Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
- 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
- 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
































