2

我知道我可以在工作表的 VBA 对象中编写以下代码,以在工作表更改上运行代码。

Private Sub Worksheet_Change(ByVal Target As Range)

End Sub

每当我过滤某个 ListObject 时,我可以编写任何类似的东西来运行代码吗?

4

2 回答 2

1

仅在某些情况下。假设我们在表中包含一个新列,我们用值1填充。在其他地方我们插入一个

=SUBTOTAL()

对该列求和的公式。随着过滤器的运行,可见行的数量会有所不同。SUBTOTAL() 函数将重新计算。

此时,Calculate Event 宏将捕获重新计算!

于 2013-11-12T14:26:55.850 回答
0

尝试这个...

我在我的 Excel 工作表中添加了一个 ListBox 表单控件。 在此处输入图像描述

接下来,我通过右键单击并选择“分配宏”为该对象分配一个宏。(您可能需要处于“设计模式”才能实现这一点——检查开发者功能区)

在此处输入图像描述

默认情况下 - 宏名称填充有更改事件宏名称。单击“新建”以创建宏。

在此处输入图像描述

您的宏已添加到模块中。希望这可以帮助!

在此处输入图像描述

于 2017-10-03T17:47:57.857 回答