所以我在工作中设置了这个电子表格 - 我最终不得不做很多繁琐的Excel任务,虽然我几乎不知道任何VBA - 我想要一个表在工作表之后自动过滤自己编辑。问题是正在过滤的列中充满了公式,这些公式响应用户所做的编辑而改变,并且在列完成计算之前应用过滤器,从而产生不稳定的结果。所以我真正想要的是在计算工作表后应用AutoFilter,而不是在编辑完工作表之后。
我一直在使用的宏是:
Private Sub Worksheet_Change(ByVal Target As Range)
With ActiveWorkbook.Worksheets("Library").ListObjects("Library")
.AutoFilter.ApplyFilter
End With
End Sub
天真地将激活事件更改为Worksheet_Calculate()并不起作用 - 它似乎反复重复应用过滤器。
我确定这是一个相对简单的问题,我只是不知道我需要做什么。你们可以建议吗?
(PS第一次在这里发帖 - 希望我已经做好了一切!)
答案 0 :(得分:0)
没关系,自己解决了。对于有问题的其他人,我只是将计算设置为手动,然后用以下代码替换我的代码:
Private Sub Worksheet_Change(ByVal Target As Range)
Calculate
ActiveWorkbook.Worksheets("Library").ListObjects("Library").AutoFilter.ApplyFilter
End Sub