我希望使用MySQL for Excel加载项从MySQL数据库插入数据透视表时自动运行Excel宏。
数据透视表插入已存在的工作表中,占用范围A2:CN600,具体取决于表的行数。我有以下代码,当指定范围内的一个单元格被更改时,它可以很好地工作:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range("A2:CN600")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
MsgBox "Cell " & Target.Address & " has changed."
End If
End Sub
实验上,我将MySQL数据库作为数据透视表插入到此工作表中以查看会发生什么,但是没有弹出消息框。当我按Ctrl + a和Delete删除表时,我得到了消息:
Cell $ A $ 2:$ CN $ 600已发生变化。
如何修改此代码,以便在插入表时显示消息框?我理解上面的代码更适合于一次更改一个单元格值的情况,而不是一次性更改其值的大范围。