중복값을 다 나열하여 RemoveDuplicates로 중복값을 지우는 코드를 썼다가
카페의 Chronicle 님이 Collection 개체로 중복값을 찾는 방식을 알려줘서
그에 맞춰서 나도 다시 짜봤다.
중복값이 생기면 Collection에 중복값을 쌓아가고
셀에 그 배열들을 뿌리는 방식. 이를테면 공식 같은 거다.
Option ExplicitSub dblName() Dim rngName As Range Dim rngCell As Range Dim cltName As New Collection Dim varName As Variant Dim i As Integer '기존항목 제거 후 제목 입력 With Range("C1") .CurrentRegion.ClearContents .Value = "중복이름" End With '반편성 영역 지정 Set rngName = Range("A1").CurrentRegion '중복값을 Collection에 저장 On Error Resume Next For Each rngCell In rngName If WorksheetFunction.CountIf(rngName, rngCell) > 1 Then cltName.Add rngCell, CStr(rngCell) End If Next rngCell On Error GoTo 0 'Collection에 저장된 중복값을 배열로 뿌림 For Each varName In cltName Range("C2").Offset(i, 0) = varName i = i + 1 Next varName End Sub cs
'VB(A)' 카테고리의 다른 글
이름을 자음 모음으로 분리하기 (0) | 2015.02.22 |
---|---|
시트별로 파일 저장 (0) | 2015.02.21 |
숫자만 인식하기 (0) | 2015.02.17 |
중복값 제외하고 수량 합산하기 (0) | 2015.02.16 |
대량의 텍스트파일을 1열로 불러오기 (0) | 2015.02.16 |