1. 添加ListBox控件
开发工具-插入-ActiveX控件-列表框
2. 添加列表框选项
在设计模式下打开ListBox属性窗口
修改ListFillRange为选项内容所在的单元格
MultiSelect默认为0-fmMultiSelectSingle单选,选择1-fmMultiSelectMulti为多选(按空格键或单击鼠标以选定列表中条目或取消选定),或者2-fmMultiSelectExtended(按Shift并单击鼠标,或按Shift的同时按一个方向键,将所选条目由前一项扩展到当前项。按Ctrl的同时单击鼠标可选定或取消选定)。
3. vba代码提取列表框值
设计模式下右击列表框,查看代码
选择change事件,编辑代码
Private Sub ListBox1_Change()
X = "" '字符串变量,存放ListBox的值
For i = 0 To ActiveSheet.ListBox1.ListCount - 1 '遍历列表框选项
If ActiveSheet.ListBox1.Selected(i) Then '该选项是否被选择
X = X & ActiveSheet.ListBox1.List(i) & "," '选中则拼接到字符串上
End If
Next
If X <> "" Then X = Mid$(X, 1, Len(X) - 1) '把字符串最后的逗号去掉
Range("F1").Value = X '字符串显示在单元格上
End Sub
- 效果
参考:
列表框(List Box)之应用实例