如何在 Excel 或 Google 表格的下拉菜单中添加复选框?

如何在 Excel 或 Google 表格的下拉菜单中添加复选框?

我希望通过下拉菜单进行数据验证,但我希望有多个选择。

单元格下拉菜单中下拉元素旁边是否可以有复选框?

答案1

列表框最适合添加复选框以进行多项选择,而不是下拉框。

让我解释一下如何在 Excel 中执行此操作(大多数 Excel 命令和方法也适用于 Google Sheet。)

在此处输入图片描述

怎么运行的:

  1. 点击开发人员选项卡、插入、列表框 (来自 Active X 控件)。
  2. 绘制列表框后,右键单击它。
  3. 然后选择“属性”从菜单中。
  4. 寻找列表填充范围&插入源数据范围(A155:A164)。
  5. 寻找列表样式框, 选择1-fmList 样式选项。
  6. 然后选择1–fmMultiSelectMulti来自 多选。
  7. 然后选择任意指定的单元格(E155),然后将其命名为列表框输出。
  8. 然后点击插入、形状并在列表框上方绘制适当的(C155)形状。
  9. 然后右键单击形状& 选择 分配宏 (Rectangle2_Click)从菜单中。

将下面写的代码作为模块插入。

Sub Rectangle2_Click()

Dim xSelShp As Shape, xSelLst As Variant, I As Integer

Set xSelShp = ActiveSheet.Shapes(Application.Caller)
Set xLstBox = ActiveSheet.ListBox1

If xLstBox.Visible = False Then
    xLstBox.Visible = True
    xSelShp.TextFrame2.TextRange.Characters.Text = "Click After Pickup Options"
Else
    xLstBox.Visible = False
    xSelShp.TextFrame2.TextRange.Characters.Text = "Click To 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
  1. 单击“形状”打开列表框,选择项目并再次点击形状将选定的项目放入单元格中E155

笔记, 调整源项列表、列表框、形状的位置和输出单元格的单元格引用。

相关内容