如何将宏分配给Excel电子表格上的列表框而不是OnAction,而是在Selection_Change上?列表框是通过“开发人员/插入/表单控件添加的。它不是用户窗体中的列表框。
问题是如果我尝试滚动列表框中的选项,则宏将启动,因为Excel将滚动视为动作。但是,我希望仅在用户从列表框中选择(选择/取消选择)某些选项的情况下运行宏。
我试图为“形状”集合找到某种方法。但是,没有找到任何东西。
答案 0 :(得分:1)
将Listindex存储在变量中,并检查其是否已更改: (对于单选:)
Public myIndex As Long
Sub ListBox1_Change()
With ActiveSheet
If .ListBoxes(1).ListIndex = myIndex Then Exit Sub
myIndex = .ListBoxes(1).ListIndex
End With
Debug.Print "your macro"
End Sub
确保打开文件myIndex时填充了Listindex 并调整ListBox的名称,并相应地调整(1)