我正在尝试存储启用多选的列表框(Excel 2010)中的选定值。这很容易通过遍历列表中的项目以查看它们是否被选中来完成。但是,在添加多个列表框后,我必须为每个列表框创建一个回调:
Sub ListBox1_Changed()
Call DoStuff(Worksheets("Sheet1").ListBoxes(1))
End Sub
Sub ListBox2_Changed()
Call DoStuff(Worksheets("Sheet1").ListBoxes(2))
End Sub
Sub DoStuff(L as ListBox)
'Do stuff here
Sub
最终,我将在多个工作表中得到大量这样的 ListBox。
现在我的问题是:是否可以引用调用宏的特定框并为我的所有列表框分配这个单一函数?我猜是这样的:
Sub ListBox_Changed(ByVal L as Object)
' This will not work btw ^^^^^^^^
' Magic code goes here.
Call DoStuff(L_converted_to_ListBox_Format)
End Sub
请注意,我没有使用用户表单,而是将列表框直接放在工作表中。
谢谢!