이 기사에서는 정의 된 범위에서 고유 한 값을 찾는 사용자 지정 함수를 만듭니다.

이 예의 원시 데이터는 A8 : A21 범위에있는 국가 이름의 중복 항목으로 구성됩니다.

ArrowRawData

논리 설명

범위에서 고유 한 값을 추출하기 위해 사용자 지정 함수 “UniqueItem”을 만들었습니다. 이 함수는 두 개의 매개 변수를 입력으로 사용합니다.

첫 번째 매개 변수는 중복 데이터로 구성된 범위이고 두 번째 매개 변수는 고유 컬렉션에서 고유 한 값의 인덱스 번호를 정의합니다.

이 함수는 인덱스 번호를 기준으로 범위에서 고유 한 값을 반환합니다. 두 번째 매개 변수는 선택적 매개 변수이며 두 번째 매개 변수가 지정되지 않은 경우 함수는 정의 된 범위에서 고유 한 값의 수를 리턴합니다.

두 번째 매개 변수에 대해 정의 된 값이 범위의 고유 값 수보다 크면 마지막 고유 값이 함수에 의해 반환됩니다.

ArrowOutput

코드 설명

On Error Resume Next For Each CellValue In InputRange CUnique.Add CellValue.Value, CStr (CellValue.Value)

[_GoBack] # Next On Error GoTo 0 위의 코드는 정의 된 범위에서 고유 한 값을 포함 할 컬렉션 개체를 만드는 데 사용됩니다. “On Error”문은 코드가 컬렉션에 중복 값을 넣으려고 할 때 컬렉션에서 오류를 생성하므로 오류를 처리하는 데 사용됩니다.

아래 코드를 따르세요

Option Explicit

Function UniqueItem(InputRange As Range, Optional ItemNo As Integer = 0) As Variant

Dim CellValue As Range

Dim CUnique As New Collection

Dim UCount As Integer

On Error Resume Next

'Adding unique items to collection from defined range

For Each CellValue In InputRange

CUnique.Add CellValue.Value, CStr(CellValue.Value)

Next

On Error GoTo 0

'Getting count of unique item in the collection

UCount = CUnique.Count

If ItemNo = 0 Then

'Returning count of unique item

UniqueItem = UCount

ElseIf ItemNo <= UCount Then

'Returning unique value based on item number

UniqueItem = CUnique(ItemNo)

Else

'Returning last unique value

UniqueItem = CUnique(UCount)

End If

End Function

이 블로그가 마음에 들면 Facebook 및 Facebook에서 친구들과 공유하십시오.

여러분의 의견을 듣고 싶습니다. 작업을 개선하고 더 나은 서비스를 제공 할 수있는 방법을 알려주십시오. [email protected]로 문의 해주세요