Excelのマクロが使えれば、こんな方法でも。
A列にデータがあると仮定します。
マクロの実行時には、ダブリのチェックを行いたい範囲を選択してから、マクロDblChkを実行してくださいね。
では。
Sub DblChk()
Dim aSelect As Variant
Dim aTemp() As Variant
Dim sAddr As String
Dim r As Long, c As Integer
Dim l As Long
'■■■ 範囲設定 ■■■
If Not IsArray(Selection) Then
MsgBox "ダブルチェックをしたい、正しい範囲を選択してください", vbInformation, "警告"
Exit Sub
End If
'■■■ 65000行以上のデータへの警告 ■■■
yesno = MsgBox("65000行以上のデータでは使えません!それ以下のデータですね?", vbYesNo, "警告")
If yesno = vbNo Then
Exit Sub
End If
'■■■ 並べ替えを行う(Keyは先頭列) ■■■
Selection.Sort _
Key1:=Selection.Cells(1, 1), Order1:=xlAscending, _
Header:=xlNo, OrderCustom:=1, MatchCase:=True, SortMethod:=xlStroke
'■■■ 選択範囲を待避 ■■■
aSelect = Selection
sAddr = Selection.Address
'■■■ 重複しない値の配列を作成する ■■■
If UBound(aSelect, 1) > 1 Then
ReDim aTemp(1 To UBound(aSelect, 1), 1 To UBound(aSelect, 2))
'1行目から最後の行-1までの判定
For r = 1 To UBound(aSelect, 1) - 1
If aSelect(r, 1) <> aSelect(r + 1, 1) Then
l = l + 1
For c = 1 To UBound(aSelect, 2)
aTemp(l, c) = aSelect(r, c)
Next c
End If
Debug.Print r
Next r
'最後の行を転記(後側のデータを残す場合)
l = l + 1
For c = 1 To UBound(aSelect, 2)
aTemp(l, c) = aSelect(r, c)
Next c
End If
Range(sAddr) = aTemp
End Sub