=UNIQUE(B2:B8)는 B2:B8의 각 값을 처음 나온 순서대로 한 번씩 반환합니다. 아래에서 North는 세 번, South는 두 번 나오지만 결과에는 지역마다 한 번씩만 나옵니다. 결과는 E2에서 아래로 분산되며 데이터를 바꾸면 갱신됩니다. B5에 West를 입력하면 Cara가 유일한 행이었던 East가 결과에서 사라집니다.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Rep | Region | Sales | Regions | |
| 2 | Ann | North | 120 | North | |
| 3 | Ben | South | 80 | South | |
| 4 | Ann | North | 90 | East | |
| 5 | Cara | East | 150 | West | |
| 6 | Ben | South | 80 | ||
| 7 | Dan | North | 60 | ||
| 8 | Eve | West | 95 |
UNIQUE는 원래 목록을 바꾸지 않습니다. 표 자체에서 반복되는 행을 지우려면 데이터 탭의 중복된 항목 제거 버튼을 쓰세요(중복 제거에서 두 방법을 모두 보여 줍니다).
UNIQUE 구문
=UNIQUE(array, [by_col], [exactly_once])
array는 값을 가져올 범위나 배열입니다.by_col은 행을 비교하려면 FALSE(기본값), 열을 비교하려면 TRUE입니다.exactly_once는 모든 고유값을 반환하려면 FALSE(기본값), 한 번만 나오는 값만 반환하려면 TRUE입니다.
UNIQUE는 Excel 2021, Excel 2024 또는 Microsoft 365가 필요합니다. 이전 버전에서는 #NAME?이 표시됩니다. Google Sheets에도 같은 세 인수를 받는 UNIQUE가 있습니다.
열 아래로가 아니라 행을 따라 이어지는 목록이라면 by_col을 TRUE로 지정하세요: =UNIQUE(B1:H1,TRUE)는 행의 고유값을 행으로 반환합니다.
여러 열에서 고유한 행
UNIQUE에 열을 둘 이상 주면 행 전체를 비교합니다. 모든 열이 다른 행과 같을 때만 중복입니다. 여기서는 담당자와 지역의 쌍입니다:
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Rep | Region | Sales | Rep | Region | |
| 2 | Ann | North | 120 | Ann | North | |
| 3 | Ben | South | 80 | Ben | South | |
| 4 | Ann | North | 90 | Cara | East | |
| 5 | Cara | East | 150 | Dan | North | |
| 6 | Ben | South | 80 | Eve | West | |
| 7 | Dan | North | 60 | |||
| 8 | Eve | West | 95 |
Ann과 North, Ben과 South가 각각 두 번 나오므로 7행이 5행이 됩니다. Dan도 North이지만 Dan과 North는 다른 쌍이므로 남습니다. 세 열을 모두 주면 =UNIQUE(A2:C8)는 Ann의 두 행(120과 90이 다름)을 모두 남기고 두 번째 Ben, South, 80 행만 버립니다.
정확히 한 번 나오는 값
세 번째 인수는 질문을 "어떤 값들이 있는가"에서 "어떤 값이 반복되지 않는가"로 바꿉니다:
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Rep | Region | Sales | Distinct | Exactly once | |
| 2 | Ann | North | 120 | Ann | Cara | |
| 3 | Ben | South | 80 | Ben | Dan | |
| 4 | Ann | North | 90 | Cara | Eve | |
| 5 | Cara | East | 150 | Dan | ||
| 6 | Ben | South | 80 | Eve | ||
| 7 | Dan | North | 60 | |||
| 8 | Eve | West | 95 |
E2는 담당자 다섯 명을 모두 나열합니다. F2는 Ann과 Ben이 각각 두 번 나오므로 Cara, Dan, Eve만 나열합니다. 쉼표 두 개는 기본값을 유지하는 by_col을 건너뜁니다.
정렬된 고유 목록
UNIQUE는 처음 나온 순서를 유지합니다. 가나다(알파벳)순 목록이 필요하면 SORT로 감싸세요. 그 옆에서 COUNTA가 고유값이 몇 개인지 셉니다:
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Rep | Region | Sales | Regions A to Z | Count | |
| 2 | Ann | North | 120 | East | 4 | |
| 3 | Ben | South | 80 | North | ||
| 4 | Ann | North | 90 | South | ||
| 5 | Cara | East | 150 | West | ||
| 6 | Ben | South | 80 | |||
| 7 | Dan | North | 60 | |||
| 8 | Eve | West | 95 |
E2는 East, North, South, West를 반환하고 F2는 4를 보여 줍니다. 내림차순은 =SORT(UNIQUE(B2:B8),,-1)을 쓰세요. 나열하지 않고 세기만 하려면 =ROWS(UNIQUE(B2:B8))도 같은 4를 줍니다. UNIQUE가 없는 엑셀 버전용 수식은 고유값 개수 세기에서 다룹니다.
조건을 거는 UNIQUE
조건을 만족하는 행에서만 고유값을 가져오려면 먼저 필터링하고 그 결과를 UNIQUE에 넘기세요. 매출 90 이상인 거래가 하나라도 있는 담당자입니다:
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Rep | Region | Sales | Reps | |
| 2 | Ann | North | 120 | Ann | |
| 3 | Ben | South | 80 | Cara | |
| 4 | Ann | North | 90 | Eve | |
| 5 | Cara | East | 150 | ||
| 6 | Ben | South | 80 | ||
| 7 | Dan | North | 60 | ||
| 8 | Eve | West | 95 |
Ann은 그런 거래가 두 건(120과 90)이지만 한 번만 나옵니다. 결과는 Ann, Cara, Eve입니다. C3을 100으로 바꾸면 Ben이 목록에 들어옵니다. 조건 여러 개를 곱하는 것을 포함해 FILTER의 어떤 조건이든 여기서 쓸 수 있습니다.
UNIQUE를 드롭다운 목록의 원본으로 쓰기
UNIQUE로 만든 드롭다운 목록은 같은 항목을 두 번 보여 주지 않고, 목록을 고치지 않아도 새 값을 받아들입니다. F1을 클릭해 목록을 열어 보세요. 항목은 E열의 UNIQUE 결과에서 옵니다. B6에 Central을 입력하면 목록에 다섯 번째 항목이 나타납니다.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Rep | Region | Sales | Regions | North | |
| 2 | Ann | North | 120 | North | 270 | |
| 3 | Ben | South | 80 | South | ||
| 4 | Ann | North | 90 | East | ||
| 5 | Cara | East | 150 | West | ||
| 6 | Ben | South | 80 | |||
| 7 | Dan | North | 60 | |||
| 8 | Eve | West | 95 |
F2는 고른 지역의 매출 합계로, North는 270입니다. 엑셀에서는 데이터 > 데이터 유효성 검사 > 목록으로 설정하고, 원본에 결과의 첫 셀 뒤에 #를 붙여 입력하세요: =$E$2#. #는 "분산된 결과 전체"라는 뜻이므로 목록이 UNIQUE와 함께 늘고 줄어듭니다. =$E$2:$E$5 같은 고정 범위는 다섯 번째 지역을 놓칩니다.
연습: 정렬된 고유 목록
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Rep | Region | Sales | Regions | |
| 2 | Ann | North | 120 | ||
| 3 | Ben | South | 80 | ||
| 4 | Ann | North | 90 | ||
| 5 | Cara | East | 150 | ||
| 6 | Ben | South | 80 | ||
| 7 | Dan | North | 60 | ||
| 8 | Eve | West | 95 |
직접 해 보세요: E2에서 각 지역을 한 번씩, 오름차순으로 나열하세요.
UNIQUE가 똑같아 보이는 값을 남기는 이유
UNIQUE는 대소문자를 빼고는 값을 정확히 비교합니다. 한 번만 나올 줄 알았던 값이 두 번 나온다면, 셀이 눈에 보이지 않는 방식으로 다른 것입니다:
- 뒤에 붙은 공백. "North "와 "North"는 다른 값입니다. 원본을 TRIM으로 정리하거나 수식 안에서 공백을 지우세요:
=UNIQUE(TRIM(B2:B8)). - 텍스트로 저장된 숫자.
'101과101은 비슷해 보이지만 하나는 텍스트이므로 둘 다 남습니다. VALUE나 데이터 > 텍스트 나누기로 열을 변환하세요. - 대소문자는 문제가 아닙니다. UNIQUE는 대소문자를 무시하므로 apple과 Apple은 같은 값으로 세어지고, 결과에는 처음 만난 철자가 남습니다.
=UNIQUE({"apple";"Apple";"North ";"North"})
엑셀에서 이 수식은 세 값을 반환합니다: apple, 뒤에 공백이 붙은 "North ", 그리고 North입니다.
자주 묻는 질문
엑셀에서 UNIQUE 함수는 무엇을 하나요?
범위의 서로 다른 값을 한 번씩 반환합니다: =UNIQUE(B2:B8)는 B2:B8의 모든 지역을 처음 나온 순서대로 한 번씩 나열합니다. 결과는 수식 셀에서 아래로 분산되며 데이터가 바뀌면 갱신됩니다.
엑셀에서 정렬된 고유값 목록을 얻으려면 어떻게 하나요?
UNIQUE를 SORT로 감쌉니다: =SORT(UNIQUE(B2:B8))는 고유값을 오름차순으로 반환합니다. 내림차순은 SORT 안에 ,,-1을 더하세요: =SORT(UNIQUE(B2:B8),,-1).
엑셀에서 고유값(distinct)과 한 번만 나오는 값(unique)의 차이는 무엇인가요?
=UNIQUE(A2:A8)는 반복되는 값을 포함해 모든 값을 한 번씩 반환합니다. =UNIQUE(A2:A8,,TRUE)는 정확히 한 번 나오는 값만 반환하고 반복되는 값은 모두 버립니다.
UNIQUE가 #NAME?을 표시하는 이유는 무엇인가요?
사용하는 버전에 이 함수가 없기 때문입니다. UNIQUE는 Excel 2021, Excel 2024 또는 Microsoft 365가 필요합니다. Excel 2019 이하에서는 목록의 사본에 데이터 > 중복된 항목 제거를 쓰거나, 데이터 > 고급에서 동일한 레코드는 하나만을 쓰세요.