Bill에는 오름차순으로 정렬 된 숫자 열이 있습니다. 열 내에 많은 중복 값이 ​​있지만 괜찮습니다. 그러나 그는 중복이없는 열에서 숫자의 첫 번째 인스턴스를 찾아야합니다. Bill은 열의 첫 번째 단일 발생 값을 식별 할 수있는 공식이 있는지 궁금합니다.

절망적 인 대답을 찾을 수있는 방법은 많이 있습니다. 한 가지 방법은 숫자 오른쪽에 도우미 열을 추가하는 것입니다. 첫 번째 숫자가 A2 셀에 있다고 가정하면 B2 셀에 다음을 입력 할 수 있습니다.

=IF(AND(A1<>A2,A3<>A2),"single","")

수식을 필요한만큼 셀 아래로 복사하면 A 열에 단일 값이있는 첫 번째 셀을 쉽게 찾을 수 있습니다.

셀 B2에서 다음 수식을 사용할 수도 있습니다.

=COUNTIF($A:$A,$A2)

필요한만큼 복사하십시오. 이 수식은 A 열의 값이 A 열 내에서 발생하는 횟수를 보여줍니다. 그런 다음 다음 수식을 사용하여 A 열에서 한 번 발생하는 첫 번째 값을 결정합니다.

=INDEX($A:$A,MATCH(1,$B:$B,0))

도우미 열을 사용할 수없는 경우 배열 수식을 사용할 수 있습니다.

다음 중 하나는 한 번 발생하는 첫 번째 값을 표시합니다.

=INDEX(A2:A999,MATCH(1,COUNTIF(A2:A999,A2:A999),0))

=SMALL(IF(COUNTIF(A2:A999,A2:A999)=1,A2:A999,""),1)

이는 배열 수식이므로 Ctrl + Shift + Enter를 사용하여 입력해야합니다. 또한 범위 내에 단일 값이 없으면 수식은 # N / A 오류를 반환합니다.

첫 번째 단일 발생 값이 포함 된 행을 알고 싶다면 다음 배열 수식을 사용하면 좋습니다.

=MATCH(1,COUNTIF(A2:A999,A2:A999),0)+1

이 수식은 A2 : A999 셀을 확인합니다. 행 A1은 건너 뛰기 때문에 수식 끝에 “+1″이 필요합니다. 헤더 행이 없거나 데이터가 행 2 이외의 행에서 시작하는 경우 그에 따라 수식을 조정해야합니다.

수식을 사용하지 않으려면 조건부 서식을 사용하여 데이터에서 단일 발생 값을 강조 표시 할 수 있습니다.

다음 단계를 따르십시오.

  1. 확인할 셀을 선택하십시오.

  2. 리본의 홈 탭이 표시된 상태에서 스타일 그룹에서 조건부 서식 옵션을 클릭합니다. Excel은 조건부 서식과 관련된 옵션 팔레트를 표시합니다.

  3. 셀 강조 규칙을 선택합니다. Excel은 더 많은 옵션을 표시합니다.

  4. 중복 값을 선택합니다. Excel은 중복 값 대화 상자를 표시합니다. (그림 1 참조)

  5. 대화 상자 왼쪽에있는 드롭 다운 목록을 사용하여 고유를 선택합니다.

  6. 대화 상자의 왼쪽에있는 드롭 다운 목록을 사용하여 단일 발생 값의 형식을 지정하는 방법을 나타냅니다.

  7. 확인을 클릭하십시오.

이 시점에서 단일 발생 값은 6 단계에서 지정한대로 형식이 지정되며 쉽게 찾을 수 있습니다. 단일 발생 값만 보려면 조건부 형식을 적용한 후 필터링을 사용하여 작업을 수행 할 수 있습니다.

매크로 접근 방식을 선호하는 경우 다음과 같은 매크로를 사용할 수 있습니다.

Sub FirstUnique()

Dim c As Range     Dim sMsg As String     Dim bLone As Boolean

If Selection.Cells.Count > 1 Then         For Each c In Selection.Cells             bLone = False             If c.Row = 1 Then                 If c <> c.Offset(1, 0) Then bLone = True             Else                 If c <> c.Offset(-1, 0) And _                    c <> c.Offset(1, 0) Then bLone = True             End If             If bLone Then                 sMsg = "First single-occurrence value found "

sMsg = sMsg & "at " & c.Address & vbCrLf                 sMsg = sMsg & "Value: " & c                 MsgBox sMsg                 Exit For             End If         Next c     Else         sMsg = "You must select at least 2 cells."

MsgBox sMsg     End If End Sub

매크로를 사용하려면 확인하려는 셀을 선택하고 실행하십시오. 매크로는 선택한 첫 번째 단일 발생 값의 주소와 값을 표시합니다.

이 팁에서 제공하는 모든 솔루션 (조건부 서식 접근 방식 제외)에서는 Bill이 말한 것처럼 평가되는 값이 정렬되어야합니다. 값이 정렬되지 않은 경우 먼저 정렬하거나 결과에 대해 완전히 다른 접근 방식을 찾아야합니다.

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (3383)은 Microsoft Excel 2007, 2010, 2013 및 2016에 적용됩니다.