[英]How to loop through excel autofilter where a criteria refers to a cell
我需要遍歷一個具有X列數的自動過濾器,並且每列中的過濾器將按照另一張紙中指定的條件
這是工作代碼,在此我為2列指定了自動過濾器,在實際數據中我有50列,字段2的條件取決於工作表Shhet1中的B2和B3,字段3的條件取決於C2和C3以此類推直到第50欄
Sub Macro1()
Sheets("Data").Select
ActiveSheet.Range("Data").AutoFilter Field:=2, Criteria1:=Worksheets("Sheet1").Range("B2").Value & Worksheets("Sheet1").Range("B3").Value
ActiveSheet.Range("Data").AutoFilter Field:=3, Criteria1:=Worksheets("Sheet1").Range("C2").Value & Worksheets("Sheet1").Range("C3").Value
End Sub
我已經嘗試了以下代碼,但是cells.value的使用不正確。
Sub Macro2()
Dim i As Integer
Sheets("Data").Select
For i = 2 To 3
ActiveSheet.Range("Data").AutoFilter Field:=2, Criteria1:=Worksheets("Sheet1").Cells(i, 2).Value & Worksheets("Sheet1").Cells(i, 3).Value
Next i
End sub
Sub FilterValues()
Dim iColumn As Integer
Dim rngData As Range
Dim wksCriterias As Worksheet
Set wksCriterias = Worksheets("Sheet1")
Set rngData = Range("Data")
With wksCriterias
For iColumn = 2 To 3
rngData.AutoFilter Field:=2, _
Criteria1:=Array(CStr(.Cells(2, iColumn)), CStr(.Cells(3, iColumn))), _
Operator:=xlFilterValues
Next
End With
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.