繁体   English   中英

Macro 中的 AutoFilter 只适用于我 go 进入 Excel 运行后打开过滤器选项并单击确定

[英]AutoFilter in Macro does only apply when I go into Excel after running it open the filter options and click ok

我试图过滤掉我使用的 VLookup 找不到值的所有数据,因此,在德语版本中,这意味着在这些列中写入#NV。 我试图通过使用显示所有不等于#NV 的数据的自动过滤器来做到这一点。 运行宏后应用过滤器但未过滤数据,我必须将 go 放入工作表打开过滤器选项并按确定然后应用过滤器。 我的过滤器代码是:

ActiveSheet.ShowAllData
ActiveSheet.range("A:C").AutoFilter Field:=3, Criteria1:="<>#NV", Operator:=xlAnd
ActiveSheet.AutoFilter.ApplyFilter

在按确定之前使用上面的代码运行宏之后

按确定后

同样奇怪的是,我还在同一个宏中过滤了等于#NV 的数据,过滤器工作得很好。 这是我的那部分代码:

ActiveSheet.range("A:C").AutoFilter Field:=3, Criteria1:="#NV", Operator:=xlAnd

看起来过滤器 function 没有按预期工作。

如果您使用Criteria1:="<>#N/A" - 结果似乎没问题。

但也许您想完全避免使用 NA。 您可以通过将=IFNA(与您的VLOOKUP一起使用来实现这一点 - 应用适合您需要的值并且可以毫无问题地进行过滤(德语: WENNNV(

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM