关于VBA筛选 和 事件 两个功能的使用注意

1.筛选功能(代码为黄色部分)

值得注意的是

Range("a1:f232").AutoFilter Field:=4, Criteria1:=Range("i2")

 Range("a1:f232").AutoFilter

单独运行这两个 是没有任何显示的,应为第二句代码的意思是:点击筛选这个功能,第一个代码点击筛选后,筛选好了,第二句代码又给点回去了。所以是没有任何效果的。

黄色部分为主要的代码

2. 事件功能的注意事项

 这个事件的 change功能是贯穿在整个流程中的,只要有任何变化,就会执行主代码,就是那个筛选代码。

如果没有下面这连两个代码,会死机。

Application.EnableEvents = False

Application.EnableEvents = True

为什么呢?因为我们的目的是:

1.按照i2的内容进行筛选      

2.把筛选出来的内容复制粘贴到右边的k到p这个区域,

但是改了i2的内容是一个动作,特么复制粘贴也是一个动作啊,然后这样,程序把自己干死了。

所以呢,我们只需要这个事件的change发生一次就好了,先关再开。


你可能感兴趣的:(关于VBA筛选 和 事件 两个功能的使用注意)