2017-09-18 7 views
0

VBAを使用して2列でダンプシートをフィルタリングし、同じブックの別のシートの値から条件を取得します。VBAを使用して自動フィルタリング複数の列と異なるシートの値

使用されるコードは、次のとおり、このコードは、1つの列のみをフィルタリングするいくつかの理由

Sub FilterOnCellValue() 

With Sheets("Dump") 
    .Range("A1:Z10000").AutoFilter Field:=9, Criteria1:=Sheets("ControlPlanning").Range("C1").Value, Field:=23, Criteria1:=Sheets("ControlPlanning").Range("C4").Value 
End With 

End Sub 

、それは2つの異なる値に数字の9と23との列をフィルタリングされるべきです。 私はこれから学びたいので、このVBAの私の思考の誤りを説明してください。 Excelのバージョンが2013の場合は、これが違います。

+1

可能な複製(https://stackoverflow.com/questions/12040906/multiple-filtering-in-excel -vba) –

+0

[Range.AutoFilter MSDN](https://msdn.microsoft.com/en-us/vba/excel-vba/articles/range-autofilter-method-excel?f=255&MSPPError=-2147217396)によると、あなたは2倍することはできません。フィールドのパラメータ。 –

+0

@Peh、値の基準はありません。 – RobExcel

答えて

2

2つのライン構文を区切るようにしてください:[?エクセルVBAで複数のフィルタリング]の

Sub FilterOnCellValue() 

With Sheets("Dump").Range("A1:Z10000") 
    .AutoFilter Field:=9, Criteria1:=Sheets("ControlPlanning").Range("C1").Value 
    .AutoFilter Field:=23, Criteria1:=Sheets("ControlPlanning").Range("C4").Value 
End With 

End Sub 
関連する問題