若要在修改筛选字段后,自动完成筛选,可以通过如下操作进行。
1. 在打开Visual Basic后,双击项目工程的Sheet1,也就是要执行筛选数据的工作表。
2. 在代码框的“通用”选项下选择Worksheet。
3. 代码框的“声明”选择“Change”。
4. 将自动筛选的代码复制到Change事件的过程中。
自动筛选的代码请参考以下文章:
5. 在自动筛选的代码前后添加一个主程序的属性,在执行筛选之前先关闭事件。修改筛选字段时已经触发了Change事件,然后再次执行筛选的同时表格也发生变化,此次变化时不用触发事件。
PrivateSubWorksheet_Change(ByValTargetAsRange)Application.EnableEvents=FalseSheet1.Range("J1:O2000").ClearContentsSheet1.Range("A1:F30").AutoFilterfield:=2,Criteria1:=Sheet1.Range("H2")Sheet1.Range("A1:F30").CopySheet1.Range("J1")Sheet1.Range("A1:F30").AutoFilterApplication.EnableEvents=TrueEndSub
6. 回到Excel工作表中,当修改了班级后,就会自动筛选出对应的结果,不用再点击执行代码或宏了。