重複行を削除

複数列からなる1行のデータ のすべてが一致した場合に削除

3行マクロ 18回-3

重複行を削除する

ここまでは、重複行を非表示にして、重複しない行だけを別シートにコピーするというマクロのコードを作成しました。
複数列からなる1行のデータ のすべてが一致した場合には、その行は不要であるとし削除します。

重複を削除するには

この場合は、データタブから、データツールグループにある、重複の削除をクリックします。
重複行を削除するマクロ1
すると、重複の削除ダイアログが表示されるので、重複が含まれる列を選択します。今回は、列4つとも選択しています。
重複行を削除するマクロ2
OKをクリックすると、重複行が削除されます。
重複行を削除するマクロ3

マクロのコードは

この手順をマクロで記録します。コードは以下のようになりました。
Sub Macro2()
    Selection.CurrentRegion.Select
    ActiveSheet.Range("$B$2:$E$26").RemoveDuplicates Columns:=Array(1, 2, 3, 4), _
        Header:=xlYes
End Sub
重複行を削除するマクロ4
このコードを汎用性の高いものにするために、以下のように修正します。列全体を選択することで、行数を意識しないで済みます。使うときは、そのデータの列をRangeで指定し、Arrayでどの列に重複があるのか指定してやります。
Sub 重複削除()
    ActiveSheet.Range("B:E").RemoveDuplicates Columns:=Array(1, 2, 3, 4), Header:=xlYes
End Sub
動画で詳しく解説しています。