可通过VBA实现下拉框加长的(显示更多待选项)的需求.
按Alt+F11,调出VBA,在VBAProject 右键→插入→用户窗体
请点击输入图片描述
调整窗体成细长的形状
请点击输入图片描述
分别增加一个按钮和列表框
请点击输入图片描述
在工作表某列把待选内容输入好(此例放N列);双击列表框,在弹出的窗口中输入以下代码
Private Sub UserForm_Initialize()
n = Sheets("记录明细").Range("N" & Rows.Count).End(xlUp).Row
arr = Sheets("记录明细").Range("N3:N" & n)
ListBox1.List = arr
End Sub
5.单击"UerForm1",双击 "选择"按钮
6.在弹出的VBA窗口中输入以下代码
Private Sub CommandButton1_Click()
Dim s As String
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
s = s & ListBox1.List(i, 0)
End If
Next i
ActiveCell = ActiveCell & s
Unload Me
End Sub
7.在工作表名称上右键→查看代码
8.输入以下代码
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 4 And Target.Row > 2 Then
UserForm1.Show
End If
End Sub
9.双击待选单元格,点击需要的内容,再点选择
选择设置区域:
1、在“数据”选项下的“数据有效性”“设置”中,选择“序列”;
2、来源中输入下拉菜单内容,以英文逗号分隔,或直接选择下拉菜单内容所在区域,确定后,即可生成下拉菜单。