需要通过VBScript在excel列上应用多个filter

我需要应用多个filter使用VBScript(VBS文件,而不是VBA)的Excel列。

我的表是这样的:

Order Line Status Ord1 Awaiting Return Ord2 Entered Ord3 Shipped Ord4 Fulfilled Ord5 Awaiting return Ord6 Shipped 

我需要在线路状态列应用filter,我需要显示列

“等待退货”,“进入”,“运送”。

我写了下面的代码:

 Set objSrcExcel = CreateObject("Excel.Application") objSrcExcel.Visible = False obj objSrcExcel.DisplayAlerts = False Set objSrcWorkbook = objSrcExcel.Workbooks.Open(srcFile) Set objSrcWorksheet = objSrcWorkbook.Worksheets(srcSheet) With objXLAppWs .Range("K1" ).AutoFilter 11,"=Awaiting Return",2 , "=Entered",2 , "=Awaiting Shipping" End With 

但是它会导致错误。

我能够应用filter使用上面的代码,有两个filter选项,即“等待返回”和“input”,但是当我尝试去3个值,它错了。

 //This code works for 2 filter values With objXLAppWs .Range("K1" ).AutoFilter 11,"=Awaiting Return",2 , "=Entered" End With 

任何帮助将不胜感激。

Prachi

直接组合只有两个标准。 请参阅https://msdn.microsoft.com/en-us/library/office/ff193884.aspx

你必须使用一个数组作为Criteria1和运算符xlFilterValues = 7。

 ... .Range("K1").AutoFilter 11, Array("Awaiting Return", "Entered", "Awaiting Shipping"), 7 ...