2016-07-19 1 views
0

매크로를 사용하여 날짜를 기준으로 이름 범위를 선택합니다. 그런 다음 선택 항목에서 중복 항목을 제거하려고합니다. 내 매크로가 잘 실행되지만 중복 제거가되지 않아 오류가 반환되지 않습니다. 내 코드에서 내가 뭘 잘못하고 있니?매크로 선택 끝에서 중복 제거

sub Remove_Duplicates() 

    Dim mRow As Long 
    Dim mStart As Long, mEnd As Long 
    Dim rng As Range 


    Worksheets("Weekely").Select 
    For mRow = 1 To 65536 
     If Range("G" & mRow).Value = "2016" Then 
      mStart = mRow 
      Exit For 
     End If 
    Next mRow 

    ' Figure out where the "2016" data ends. 
    For mRow = mStart To 65536 
     If Range("G" & mRow).Value <> "2016" Then 
      mEnd = mRow 
      Exit For 
     End If 
    Next mRow 
    mEnd = mEnd - 1 

    Set rng = Range("G" & mStart & ":G" & mEnd).Offset(0, 1) 

    rng.RemoveDuplicates 

End Sub 

답변

0

오류는 발생하지 않지만 아무것도 수행하지 않습니다. 복제본을 제거해야하는 열을 지정해야합니다. 또한 헤더가 있는지 여부를 지정하십시오.

당신이 헤더 셀 및 H

올바른 방법으로 하나의 열이없는 가정 : rng.RemoveDuplicates Columns:=1, Header:=xlNo

+0

나는 바보입니다, 내가 그 전에 시도 맹세합니다. 감사합니다. – Reisenrich

+0

걱정하지 않아도 눈의 두 번째 세트는 항상 좋습니다. :) – cyboashu

+0

또한 쿼리가 해결되면 대답으로 표시하십시오. – cyboashu