Sub CellKleaner()
Dim c As Collection, r As Range, v As String
Dim v2 As String
For Each r In Selection
v = r.Text
If InStr(1, v, ",") > 0 Then
Set c = New Collection
ary = Split(v, ",")
v2 = ary(0)
c.Add ary(0), CStr(ary(0))
For i = LBound(ary) To UBound(ary)
On Error Resume Next
c.Add ary(i), CStr(ary(i))
If Err.Number > 0 Then
Err.Number = 0
On Error Resume Next
Else
v2 = v2 & "," & ary(i)
End If
Next i
r.Value = v2
Set c = Nothing
End If
Next r
End Sub
2 回答
选择要处理的单元格并运行以下简单宏:
数据透视表可用于删除单元格之间的重复项: