需要在Excel中的数据刷新上运行VBA宏

Rj *_*lin 6 excel vba excel-vba

我试图提示宏在数据刷新上运行。我有需要运行构建的宏,但是由于使用ActiveX ComboBox调用了工作表中嵌入的宏,因此无法使用新值存在问题。

我发现人们引用AfterRefresh和BeforeRefresh的几个实例,但我认为我误会了这将如何生效并调用宏。

我目前正在运行ComboBox,所以我有多个实例

Private Sub ComboBox22_Change()
'do stuff
End Sub.
Run Code Online (Sandbox Code Playgroud)

但是我需要在数据刷新时进行“处理”,包括自动刷新和在打开工作表时进行的刷新。

我不想将刷新绑定到特定的框,因为刷新的项目不依赖于任何一个数据更改实例。

任何帮助是极大的赞赏。

谢谢。

Dav*_*cel 3

也许工作表更改事件在这种情况下会有所帮助。

右键单击工作表选项卡,选择“查看代码”,选择“工作表”,然后选择“更改”。

当特定范围的单元格发生更改时,代码将自动启动。

右键单击工作表选项卡 在此输入图像描述

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub    ' this stops code error if more than one cell is changed at once

    If Not Application.Intersect(Target, Me.Range("A1:C10")) Is Nothing Then    ' indicates the Target range
        MsgBox "You have changed " & Target.Address & " to " & Target
    End If

End Sub
Run Code Online (Sandbox Code Playgroud)