こんにちは。VBA初心者です。
VBAのオートフィルターについて1つ教えていただきたいことがあります。
エクセルシートにあるデータをオートフィルターにかけて、その結果を既存の別のシート(ここでは「初回」)にコピーするという作業をしています。
具体的に実現したいことは
1,Field:=30の値が120以上の物を抽出し、「初回」シートにコピー。
2,Field:=32の値が19以上の物を抽出し、「初回」シートの1,の結果の次の行から追加でコピー。
3,Field:=22の値が80以上の物を抽出し、「初回」シートの2,の結果の次の行から追加でコピー。
このような形で、フィルターをかけてどんどん別シートに追加していきたいです。
調べ持って以下のコードを記載しましたが、1,までは行くのですが、その先がコピーされません。
初心者ですので、コードは醜いですが、アドバイス頂けたらと思います。
ちなみにパソコンはMACを利用しています。
VBA
1Private Sub CommandButton12_Click() 2 3 Dim Target As Range, LastCell As Range 4Set Target = Sheets("初回").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0) 5 6 Range("A1").AutoFilter Field:=30, Criteria1:=" <=120" 7Range("A1").CurrentRegion.Copy Target 8ActiveSheet.AutoFilterMode = False 9 10Range("A1").AutoFilter Field:=32, Criteria1:=" >=19" 11Range("A1").CurrentRegion.Copy Target 12ActiveSheet.AutoFilterMode = False 13 14Range("A1").AutoFilter Field:=22, Criteria1:=" >=80" 15Range("A1").CurrentRegion.Copy Target 16ActiveSheet.AutoFilterMode = False 17 18End Sub
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/01 01:28
2020/11/01 01:35 編集
2020/11/01 01:40