跳至主要内容

如何在 Excel 中创建带有多个复选框的下拉列表?

Author: Siluvia Last Modified: 2025-07-31

传统的 Excel 下拉列表限制用户只能进行单选。为了克服这一限制并实现多选,我们将探讨两种实用的方法来创建带有多个复选框的下拉列表。

使用列表框创建带有多个复选框的下拉列表
A:使用源数据创建一个列表框
B:命名将显示所选项的单元格
C:插入形状以帮助输出所选项
借助一款强大的工具轻松创建带复选框的下拉列表
更多关于下拉列表的教程...


使用列表框创建带有多个复选框的下拉列表

如下图所示,当前工作表中 A2:A11 范围内的所有名称将作为位于 C4 单元格中的列表框的源数据。点击该框会展开可供选择的项目列表,所选项目将显示在 E4 单元格中。要实现此功能,请按照以下步骤操作:

A screenshot showing the source data range for a list box with multiple checkboxes in Excel

A. 使用源数据创建一个列表框

1. 点击 开发工具 > 插入 > 列表框(Active X 控件)。参见截图:

A screenshot of selecting the List Box option under the Developer tab in Excel

2. 在当前工作表中绘制一个列表框,右键单击它,然后从右键菜单中选择 属性

A screenshot of the Properties option on the list box context menu

3. 在“属性”对话框中,您需要按如下方式配置:

  • 3.1 在 ListFillRange 框中,输入要在列表中显示的源区域(这里我输入范围 A2:A11);
  • 3.2 在 ListStyle 框中,选择 1 - fmList StyleOption
  • 3.3 在 MultiSelect 框中,选择 1 – fmMultiSelectMulti
  • 3.4 关闭 属性 对话框。参见截图:

    A screenshot of the configured Properties dialog box for a list box in Excel

B:命名将显示所选项的单元格

如果需要将所有选定项输出到指定单元格(例如 E4),请按照以下步骤操作:

1. 选择单元格 E4,在 名称框 中输入 ListBoxOutput 并按 Enter 键。

A screenshot showing how to name a cell for locating selected items in Excel

C. 插入形状以帮助输出所选项

1. 点击 插入 > 形状 > 矩形。参见截图:

A screenshot showing how to insert a rectangle shape in Excel

2. 在工作表中绘制一个矩形(这里我在单元格 C4 中绘制矩形)。然后右键单击矩形并从右键菜单中选择 分配宏

A screenshot of assigning a macro to a rectangle shape in Excel

3. 在“分配宏”对话框中,点击 新建 按钮。

A screenshot of the Assign Macro dialog box in Excel

4. 在打开的 Microsoft Visual Basic for Applications 窗口中,请用以下 VBA 代码替换模块窗口中的原始代码。

VBA 代码:创建带有多个复选框的列表

Sub Rectangle1_Click()
'Updated by Extendoffice 20200730
Dim xSelShp As Shape, xSelLst As Variant, I, J As Integer
Dim xV As String
Set xSelShp = ActiveSheet.Shapes(Application.Caller)
Set xLstBox = ActiveSheet.ListBox1
If xLstBox.Visible = False Then
    xLstBox.Visible = True
    xSelShp.TextFrame2.TextRange.Characters.Text = "Pickup Options"
    xStr = ""
    xStr = Range("ListBoxOutput").Value
    
    If xStr <> "" Then
         xArr = Split(xStr, ";")
    For I = xLstBox.ListCount - 1 To 0 Step -1
        xV = xLstBox.List(I)
        For J = 0 To UBound(xArr)
            If xArr(J) = xV Then
              xLstBox.Selected(I) = True
              Exit For
            End If
        Next
    Next I
    End If
Else
    xLstBox.Visible = False
    xSelShp.TextFrame2.TextRange.Characters.Text = "Select Options"
    For I = xLstBox.ListCount - 1 To 0 Step -1
        If xLstBox.Selected(I) = True Then
        xSelLst = xLstBox.List(I) & ";" & xSelLst
        End If
    Next I
    If xSelLst <> "" Then
        Range("ListBoxOutput") = Mid(xSelLst, 1, Len(xSelLst) - 1)
    Else
        Range("ListBoxOutput") = ""
    End If
End If
End Sub

注意:在代码中,Rectangle1 是形状名称;ListBox1 是列表框的名称;“选择选项”和“提取选项”是形状显示的文本;ListBoxOutput 是输出单元格的区域名称。您可以根据需要更改它们。

5. 同时按下 Alt + Q 键关闭 Microsoft Visual Basic for Applications 窗口。

6. 单击矩形按钮将折叠或展开列表框。当列表框展开时,通过勾选所需项目进行选择。然后再次单击矩形以将所有选定项输出到单元格 E4。参见下面的演示:

7. 然后将工作簿保存为 启用宏的工作簿,以便将来重复使用代码。


使用一款强大的工具创建带复选框的下拉列表

厌倦了复杂的 VBA 编码?Kutools for Excel 让创建带有复选框的下拉列表变得简单,从而实现无缝多选。非常适合用于调查、数据筛选或动态表单,这款用户友好的工具简化了您的工作流程并节省了时间。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

1. 打开已设置数据验证下拉列表的工作表,点击 Kutools > 下拉列表 > 启用高级下拉列表。然后,再次从下拉列表中点击 带复选框的下拉列表。参见截图:

click to enable Advanced Drop-down List arrow right click Drop-down List with Check Boxes feature

2. 在 添加 复选框 到下拉列表 对话框中,请按如下方式配置:

  • 2.1) 选择包含下拉列表的单元格;
  • 2.2) 在 分隔符 框中,输入用于分隔多个项目的分隔符;
  • 2.3) 根据需要勾选 启用搜索 选项。(如果您勾选此选项,稍后可以在下拉列表中进行搜索。)
  • 2.4) 点击 确定 按钮。

    click Drop-down List with Check Boxes feature

从现在开始,当您单击带有下拉列表的单元格时,会弹出一个列表框,请通过勾选复选框选择项目并将其输出到单元格中,如下方演示所示。

有关此功能的更多详细信息,请访问本教程

Kutools for Excel - 通过超过300个必备工具,让Excel功能大幅提升。永久免费享受AI功能!立即获取

本文提供了两种方法,帮助您轻松在 Excel 中创建带复选框的下拉列表。您可以选择自己喜欢的方法。如果您有兴趣探索更多 Excel 技巧和窍门,我们的网站提供了数千篇教程


相关文章:

在 Excel 下拉列表中键入时自动完成 如果您的数据验证下拉列表包含大量值,您需要在列表中向下滚动才能找到合适的值,或者直接在列表框中输入整个单词。如果有一种方法可以在键入下拉列表的第一个字母时允许自动完成,一切都会变得更容易。本教程提供了解决该问题的方法。

在 Excel 中从另一个工作簿创建下拉列表 在一个工作簿内的工作表之间创建数据验证下拉列表非常容易。但如果数据验证所需的列表数据位于另一个工作簿中,您会怎么做?在本教程中,您将学习如何详细地从另一个工作簿在 Excel 中创建下拉列表。

在 Excel 中创建可搜索的下拉列表 对于包含大量值的下拉列表,找到合适的值并不容易。之前我们介绍了一种在下拉框中输入第一个字母时自动完成下拉列表的方法。除了自动完成功能外,您还可以使下拉列表可搜索,以提高在下拉列表中查找合适值的工作效率。要使下拉列表可搜索,请尝试本教程中的方法。

在 Excel 下拉列表中选择值时自动填充其他单元格 假设您已经基于单元格范围 B8:B14 创建了一个下拉列表。当您在下拉列表中选择任何值时,您希望单元格范围 C8:C14 中的相应值能够自动填充到选定单元格中。为了解决这个问题,本教程中的方法将为您提供帮助。

更多关于下拉列表的教程...

最佳 Office 办公效率工具

🤖 Kutools AI 助手:基于智能执行,彻底革新数据分析 生成代码创建自定义公式分析数据并生成图表调用 Kutools Functions
热门功能:查找、选中项的背景色或标记重复项|删除空行|合并列或单元格且不丢失数据|四舍五入(无公式)...
高级 LOOKUP多条件查找 (VLookup)多值查找 (VLookup)多表查找 (VLookup Across Multiple Sheets)模糊查找 (Fuzzy Lookup)...
高级下拉列表快速创建下拉列表依赖型下拉列表多选下拉列表...
列管理器添加指定数量的列移动列切换隐藏列的可见状态比较区域及列...
特色功能网格聚焦设计视图增强编辑栏工作簿 & 工作表管理器资源库(自动文本)|日期提取合并数据加密/解密单元格按列表发送电子邮件超级筛选特殊筛选(筛选粗体/倾斜/删除线等)...
热门15 大工具集12 款文本工具添加文本删除特定字符等)50+ 种图表 类型甘特图等)40+ 实用公式基于生日计算年龄等)19 款插入工具插入二维码按路径插入图片等)12 种转换工具小写金额转大写汇率转换等)7 款合并与分割工具高级合并行分割单元格等)...更多精彩等你发现
使用 Kutools,支持您的首选语言——包括英语、西班牙语、德语、法语、中文及40 多种其他语言!

用 Kutools for Excel 加速你的 Excel 技能,体验前所未有的高效办公。 Kutools for Excel 提供300 多项高级功能,助您提升效率,节省大量时间。点击此处,获取你最需要的功能...


Office Tab 为 Office 带来标签式界面,让你的工作更加轻松

  • 在 Word、Excel、PowerPoint 启用标签式编辑和阅读
  • 在同一窗口的新标签中打开和创建多个文档,无需新建窗口。
  • 办公效率提升50%,每天帮你减少上百次鼠标点击!