Combobox链接的单元格值更改不会触发工作表更改事件

时间:2017-02-15 15:42:46

标签: vba excel-vba events combobox excel

根据这个问题:在一个ActiveX组合框中选择一个新的值由它的.LinkedCell属性链接到一个单元格不会触发工作表更改事件。

我知道组合框有各种各样的事件,比如它自己的更改事件,但它们都不适合我需要做的事情(在更改的单元格上进行自定义数据验证)。

作为一种解决方法,我将.LinkedCell传递给我在组合框鼠标上的验证码和键盘事件(我不能使用丢失的焦点......长篇故事,并且在每次改变角色时都会发生变化太多了。)

有没有人知道在用户使用完控件后,在事件级别传递值的更简洁方法?

1 个答案:

答案 0 :(得分:1)

如果你想在工作表中触发ChangeEvent而不做任何事情,可以采用以下方法:

在一个模块中:

Option Explicit

Public Sub CheckMe()
    Application.Run "tblDB.Worksheet_Change", tblDB.Cells(1, 1)
End Sub

在名为tblDB的工作簿中:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    Debug.Print "triggered"
End Sub

现在,无论何时运行CheckMe,都会触发Worksheet_Change事件。