![如何在 Excel 或 Google 表格的下拉菜单中添加复选框?](https://linux22.com/image/1570525/%E5%A6%82%E4%BD%95%E5%9C%A8%20Excel%20%E6%88%96%20Google%20%E8%A1%A8%E6%A0%BC%E7%9A%84%E4%B8%8B%E6%8B%89%E8%8F%9C%E5%8D%95%E4%B8%AD%E6%B7%BB%E5%8A%A0%E5%A4%8D%E9%80%89%E6%A1%86%EF%BC%9F.png)
我希望通过下拉菜单进行数据验证,但我希望有多个选择。
单元格下拉菜单中下拉元素旁边是否可以有复选框?
答案1
列表框最适合添加复选框以进行多项选择,而不是下拉框。
让我解释一下如何在 Excel 中执行此操作(大多数 Excel 命令和方法也适用于 Google Sheet。)
怎么运行的:
- 点击开发人员选项卡、插入、列表框 (来自 Active X 控件)。
- 绘制列表框后,右键单击它。
- 然后选择“属性”从菜单中。
- 寻找列表填充范围&插入源数据范围(A155:A164)。
- 寻找列表样式框, 选择1-fmList 样式选项。
- 然后选择1–fmMultiSelectMulti来自 多选。
- 然后选择任意指定的单元格(E155),然后将其命名为列表框输出。
- 然后点击插入、形状并在列表框上方绘制适当的(C155)形状。
- 然后右键单击形状& 选择 分配宏 (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
- 单击“形状”打开列表框,选择项目并再次点击形状将选定的项目放入单元格中
E155
。
笔记, 调整源项列表、列表框、形状的位置和输出单元格的单元格引用。