私はVBAを初めて使いました。多くの検索の後、コードが正常に動作しません。私はフィルタをかけたい/列Bの値313とC列の値1または2を持っているすべての列と同じワークシートの下部にあるすべての列(A - N)からのデータで関連するすべての行をコピーするものを選択しようとしています。ワークシートには行数が設定されておらず、313は必ずしも同じセルに含まれているわけではありません。私は以下を試しましたが、コードは下部の選択ではなく、「A2」に貼り付けられているようです。どんな助けでも大歓迎です。条件にフィルタをかけて、同じワークシートの下部にコピー&ペーストします
Sub CopyPartOfFilteredRange()
Dim ws1 As Worksheet
Dim filterRange As range
Dim copyRange As range
Dim lastRow As Long
Set ws1 = ThisWorkbook.Sheets("Sheet 1")
ws1.AutoFilterMode = False
lastRow = ws1.range("A" & ws1.Rows.Count).End(xlUp).Row
Set filterRange = ws1.range("A1:N" & lastRow)
Set copyRange = ws1.range("A2:N" & lastRow)
filterRange.AutoFilter Field:=2, Criteria1:="313"
filterRange.AutoFilter Field:=3, Criteria1:="=1", _
Operator:=xlAnd, Criteria2:="=2"
lastRow = ws1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
ws1.Cells(lastRow, 1).Select
ws1.Paste
ws1.AutoFilterMode = False
End Sub
それが何かをコピーしている場合、私は表示されません。 –