Excel VBA基于另一个工作簿中的一系列单元格筛选工作表

晚上好,

过去几个月,我一直在学习如何使用VBA来自动化一些报告。 这个网站有很大的帮助,我已经能够弄清楚如何做很多事情,但解决这个问题的方法仍然没有解决。 我有一个相对复杂的macros,已经完全自动化这个特定的报告,除了这一步,如果我能弄清楚,我可以实现报告的全面自动化。

系统会生成.xls格式的原始数据文件,并使用该数据的新数据进行清理并添加到报告模板中。 X列包含商品描述,但是许多行数据具有不可接受的商品描述,需要将这些行复制到单独的工作表中并发送给其他人以find正确的描述。 在主报告模板中,我创build了可接受商品描述的列表,我希望能够具有原始数据文件filter,以便在列X中具有不在可接受列表中的值的任何行显示,并且显示所有已经包含可接受的描述的行被隐藏。

我试图操纵filter,loggingmacros,并试图操纵代码,但没有运气。 这是我logging行动时得到的结果。 数组开头处的一些项目是可接受描述(有意义的东西)的示例,最后的随机东西是我想要显示的项目types的示例,这些将​​需要进行研究并手动更正。

Sub hiderows() Windows("stop level data.xls").Activate Rows("1:1").Select Selection.AutoFilter ActiveSheet.Range("$A$1:$AB$1290").AutoFilter Field:=24, Criteria1:=Array( _ "Cotton", "Covers", "Displays", "Fabric", "Fasteners", "Fiber", "Fiber Rolls", _ "Fibers", "Foam", "Foam Rolls", "Frames", "Labels", "Latex", "Lumber", "Machines",_ "Mattresses", "Pads", "Plastic", "PO #Avi", "PO #P0005557/SO #3203687", _ "PO #P0005615/SO #3203693", "PO #P0007297/SO#3203828", "Rolls", "Serta", "Springs"_ , "T000216", "T000247", "T000269", "T000270", "T000278", "T000286", "T000294", _ "T000296", "Tape", "Thread", "Tick", "Ticking", "Transfer from", "Wood", _ "="), Operator:=xlFilterValues End Sub 

作为第一步,我试图只是得到上面的代码来隐藏行,而不是通过插入<>代替=以许多不同的方式显示它们,但没有运气。 我真正想做的是过滤工作表Windows("Stop level data.xls")以便如果特定行的column X列中的值不等于Windows("master template.xlsm").Sheets("lookups").Range("AE2:AE100")的值Windows("master template.xlsm").Sheets("lookups").Range("AE2:AE100")

提前感谢您的时间,我已经花了无数小时与此战斗,并没有接近解决scheme。