같은 셀에서 줄바꿈(vbLf) 되어 있는 셀내에서 중복이 발생한 것은 제거를 하는 VBA 코드다.
Sub RemoveDuplicate_InCell()
Dim rngC As Range, Dat As Variant, X As New Collection
Dim tmp As String, i&
On Error Resume Next
For Each rngC In Range([A2], Cells(Rows.Count, "A").End(3)).SpecialCells(2)
Dat = Split(rngC, vbLf)
Set X = Nothing
For i = 0 To UBound(Dat)
X.Add rngC.Value, CStr(Dat(i)) '// 중복된 데이터는 저장하지 마라
If Err.Number <> 457 Then '// 만일 에러가 발생하지 않았으면
If i = 0 Then
tmp = Dat(i)
Else
tmp = tmp & vbLf & Dat(i)
End If
End If
Err.Clear
Next i
rngC.Offset(, 1) = tmp
tmp = vbNullString '// 셀이 변경될 때 임시변수 초기화
Next rngC
End Sub
'업무 능력 향상 > 엑셀 VBA 활용' 카테고리의 다른 글
[VBA] 자막 대사 분리 저장 (0) | 2015.08.14 |
---|---|
[VBA] 자막 셀 삭제, 셀 병합, 자막 분리정리 (0) | 2015.08.08 |
[VBA] SQL Query (Select 구문) (0) | 2015.07.19 |
[VBA] VLOOKUP VBA 와 FIND VBA 속도 차이 (1) | 2015.07.13 |
[VBA] 자막 내보내기 (0) | 2015.07.12 |