Microsoft Excel VBA - データが重複する行を削除する方法

◆概要

 このページは、Excel VBAでデータが重複する行を削除する方法について記載しています。

◆内容

データを取り込んだ後、並べ替えをした結果、重複データが含まれていることがあります。数行なら目視で確認できますが、数百行ともなればとても目視で削除することは気の遠くなる作業です。このような時こそ、マクロを使って効率化しましょう。この例ではDo〜Loopを使って重複データがある行を削除しています。

◆Sample code

この例では、A列にデータがあるものとします。A列のセルを調べ、次の行のセルと同じものがあればその行を削除します。

Sub GoodRemoveDuplicates()
'A列にデータが入力されており、そのデータを並べ替えた後、
'重複するデータが含まれている行を削除するマクロ
    Worksheets("Sheet1").Range("A1").Sort _
        key1:=Worksheets("sheet1").Range("A1")
    Set currentCell = Worksheets("sheet1").Range("A1")
    Do While Not IsEmpty(currentCell)
        Set nextCell = currentCell.Offset(1, 0)
        If nextCell.Value = currentCell.Value Then
            currentCell.EntireRow.Delete
        End If
        Set currentCell = nextCell
    Loop
End Sub



▼ページトップへ