EXCEL中如何设置在一单元格下拉菜单中选择多项,比如A,B,C,D,选择ABC等很多组合多选的时候怎么设置。

EXCEL中如何设置在一单元格下拉菜单中选择多项,比如A,B,C,D,选择ABC等很多组合多选的时候怎么设置。,第1张

关于这个问题,用控件有点难做,你可以在做的时候把各选择项一个一个的列出来,供用户选择
c2:c11是数据,数据——数据工具——数据有效性——设置(有效性条件允许:序列,来源:=$C$2:$C$11)

1、在电脑上打开excel表格,选择第一个单元格,再点击数据选项。具体 *** 作步骤如下图
2、再点击数据验证。具体 *** 作步骤如下图:
3、再点击下拉箭头,选择序列。具体 *** 作步骤如下图:
4、之后在来源中输入多个下拉选项。具体 *** 作步骤如下图:
5、然后点击确定。
6、之后点击下拉箭头。具体 *** 作步骤如下图:
7、点击表格,可以看到有多个下拉选项可以选择。

下拉菜单可以按下面的方法进行制作:

选中要设置下拉菜单的单元格或单元格区域----数据---有效性---"允许"中选择"序列"---"来源"中写入下拉项的条目如:   男,女  条目之间要用英文半角逗号相隔

如果是多个数据条目的录入,且经常想进行修改那按下面的图进行制作

单元格中设置多选下拉框是可以做到的

楼主没有举例说明具体需求,下面以选择多个姓名为例,步骤如下:

先在清单表中列举一个姓名列表

在多选下拉菜单表中设置多选下拉框,按Alt+F11键进入VBE编辑器,将如下两段代码粘贴到多选下拉菜单这个表的右侧代码区

Private Sub ListBox1_KeyDown(ByVal KeyCode As MSFormsReturnInteger, ByVal Shift As Integer)

  If KeyCode = 13 Then

  If ListBox1ListIndex = -1 Then Exit Sub

  Dim i&, str$

  With ListBox1

      For i = 0 To ListCount - 1

          If Selected(i) Then

              str = str & ";" & List(i)

          End If

      Next

      TopLeftCellOffset(, -1)Value = Mid(str, 2)

      Visible = False

  End With

  End If

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

  If TargetCount > 1 Then Exit Sub

  If TargetRow > 2 And TargetColumn = 2 Then

      Dim arr

      arr = Sheets("清单")Cells(2, 1)Resize(Sheets("清单")Cells(RowsCount, 1)End(xlUp)Row - 1)

      With ListBox1

          MultiSelect = 1

          ListStyle = 1

          List = arr

          Top = TargetTop

          Left = TargetLeft + TargetWidth

          Height = TargetHeight 15

          Width = 90

          Visible = True

      End With

  Else

      ListBox1Clear

      ListBox1Visible = False

  End If

End Sub

最终效果如图:

注意:档案要保存为启用宏的工作簿


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12609657.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-26
下一篇2025-08-26

发表评论

登录后才能评论

评论列表(0条)

    保存