本文详细介绍了如何在Excel中使用VBA开发工具添加ListBox控件,并设置其MultiSelect选项。重点讲解了如何通过Change事件提取ListBox值,以代码形式展示如何处理ListBox的选中项。适合了解VBA编程和Excel列表框应用的读者。
摘要由CSDN通过智能技术生成
1. 添加ListBox控件
开发工具-插入-ActiveX控件-列表框
2. 添加列表框选项
在设计模式下打开ListBox属性窗口
修改ListFillRange为选项内容所在的单元格
MultiSelect默认为0-fmMultiSelectSingle单选,选择1-fmMultiSelectMulti为多选(按空格键或单击鼠标以选定列表中条目或取消选定),或者2-fmMultiSelectExtended(按Shift并单击鼠标,或按Shift的同时按一个方向键,将所选条目由前一项扩展到当前项。按Ctrl的同时单击鼠标可选定或取消选定)。
3. vba代码提取列表框值
设计模式下右击列表框,查看代码
选择change事件,编辑代码
Private Sub ListBox1_Change()
X = ""
For i = 0 To ActiveSheet.ListBox1.ListCount - 1
If ActiveSheet.ListBox1.Selected(i) Then
X = X & ActiveSheet.ListBox1.List(i) & ","
End If
If X <> "" Then X = Mid$(X, 1, Len(X) - 1)
Range("F1").Value = X
End Sub
- 效果
参考:
列表框(List Box)之应用实例
Sheet2中的类别单选框
Sheet2中的销售额列(使用公式计算获得,个人觉得这个函数才是这个案例中最复杂的部分)
Sheet2中右侧的数据透视表和切片器(用来验证左侧销售额列计算结果)
VBA程序
所需技能分析:
Office基础操作
Excel公式与函数(多重函数嵌套+数组公式)
数据透视表(基础技能+切片器)
插入控件(此处只手动更改了控.
Private Sub UserForm_Initialize()
arr = Sheets("产品表").Range("a1").CurrentRegion
With ListBox1
'设置列表框属性
.List = arr
.MultiSelect = fmMultiSelectExtended
方法一:两个for循环
aspx.cs
private string id=""; protected void btn_del_Click(object sender, EventArgs e) {
for (int i = 0; i < typeList.Items.Count; i++) { ...
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
MsgBox ListBox1.List(i)
End If
Next i
这段代码将遍历列表框中的所有项,并显示被选中的项的值。请注意,您需要将“ListBox1”替换为您实际使用的列表框的名称。