
Excelのプルダウン(ドロップダウン)機能を使えば、入力を簡単に選択できる便利な仕組みが使えます。
しかし、標準機能では1つしか選べないため、「複数の項目を選びたい」という場面では対応できません。
この記事では、VBAを使って複数選択を可能にする方法と、その際の注意点や代替手段についてわかりやすく解説します。
目次
Excelのプルダウンは通常1つだけ選択可能
- データの入力規則(リスト)では、選択肢は1つまで
- 選んだ内容を「上書き」する仕様
- 「AとBの両方を選びたい」といった要望には非対応
複数選択を実現する方法①:VBAを使ったカスタマイズ
Excelの標準機能では難しい複数選択も、VBA(マクロ)を使えば実現可能です。
サンプルコード(対象範囲で複数選択)
Dim oldValue As String
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("B2:B5")) Is Nothing Then
If Target.Count = 1 Then
If IsError(Target.Value) Then
oldValue = ""
Else
oldValue = CStr(Target.Value)
End If
Else
oldValue = ""
End If
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B2:B5")) Is Nothing Then
If Target.Count = 1 Then
On Error GoTo SafeExit
Application.EnableEvents = False
Dim newValue As String
If IsError(Target.Value) Then GoTo SafeExit
newValue = CStr(Target.Value)
' 空チェックと重複チェック
If oldValue <> "" And newValue <> "" Then
If InStr(1, oldValue, newValue, vbTextCompare) = 0 Then
Target.Value = oldValue & ", " & newValue
Else
Target.Value = oldValue
End If
End If
SafeExit:
Application.EnableEvents = True
End If
End If
End Sub
使い方
- このコードを
対象のシート
のコードモジュールに貼り付けます - プルダウンで新たに選んだ項目が、前の項目に「,(カンマ)」で連結されます
実際の操作イメージ
- セルB2に「営業部」を選択 → Enterで次へ
- B2に戻って「総務部」を選択 → 「営業部, 総務部」と表示される
- すでに選んだ「営業部」を再度選んでも追加されず重複防止
方法②:チェックボックスやリストボックスの利用(代替案)
チェックボックス
- 複数のチェックボックスを用意して「はい/いいえ」形式で複数回答を可能に
- ビジュアル的には見やすいが、数が多いと非効率
ActiveXのリストボックス
- 「複数選択可」のリストボックスも使用可能(ただしユーザーにとって扱いにくい)
注意点とデメリット
項目 | 内容 |
---|---|
VBAが無効な環境では動作しない | マクロ無効設定の環境では動作しないため、共有時に注意 |
元の選択肢が更新されない | 選択肢を修正してもすでに選ばれた内容には反映されない |
データの整形が必要になる | カンマ区切りで複数項目が入力されるため、後の集計や並び替えで加工が必要になる |
よくある質問(FAQ)
Q. VBAを使わずに複数選択できますか?
→ 標準機能では不可能です。Power Apps やGoogleフォームなど、別の仕組みを検討するのが現実的です。
Q. 複数選択された内容を集計できますか?
→ 可能ですが、カンマ区切りのセルを分割する処理が必要です(TEXTSPLIT
やSPLIT関数
などを使用)。
Q. Excel Onlineでも使えますか?
→ VBAは動作しません。共有先がクラウド環境の場合は注意してください。
ファイルをすぐに試したい方へ
以下のファイルには、VBAを使って複数選択可能に設定したExcel(.xlsm形式)が含まれています。
ファイルはZIP形式で圧縮されていますので、解凍してから開いてください。
開いた後は「マクロを有効にする」をクリックしてから操作をお試しください。
まとめ
- Excelのプルダウンは標準では1つだけ選択
- 複数選択にはVBA(マクロ)の活用が必須
- 共有環境や集計処理を見越した設計が重要
プルダウンで複数の選択肢を扱う必要がある場合は、運用方法やデータ構造もセットで考えることが大切です。

最後までお読みいただきありがとうございます。
コメント
※ コメントは確認後に公開されます。反映まで少し時間がかかる場合があります。