VBA:Excelでフィルターをかけたデータを削除する方法
1.やりたいこと
Excelでフィルタリングしたデータを削除したい。
重複した黄色のレコードで「利用フラグ」(F列)が「1」の方を残し、空白のものを削除したい。
複数条件でフィルターした削除対象のレコード。
「重複チェック」が「1」より大きい。
利用フラグが「空白」。
「重複チェック」が「1」より大きい。
利用フラグが「空白」。
フィルタリングしたデータを削除した結果です。
黄色のレコードで「利用フラグ」(F列)が「1」の物だけが残ります。
黄色のレコードで「利用フラグ」(F列)が「1」の物だけが残ります。
2.サンプルコード
以下のサンプルコードを実行するとフィルターをかけ、その後でフィルタリングされた範囲を削除できます。
1 2 3 4 5 6 7 8 9 10 11 12 |
'//不要データをフィルターリングして削除' With Sheets("Sheet1").Range("A1").CurrentRegion 'A列(1番目)の「重複チェック」が「1」より大きいもの' .AutoFilter 1, ">1" 'F列(6番目)の「利用フラグ」が「空白」のもの' .AutoFilter 6, "" 'フィルタリングされたデータ部分をターゲットとして設定します。' Set targetRange = .Offset(1, 0).Resize(.Rows.Count - 1).SpecialCells(xlCellTypeVisible) 'ターゲットの範囲を削除します。' targetRange.Delete shift:=xlUp End With |