엑셀에서 많은 데이터가 가로로 정리되어 있는 경우, HLOOKUP 함수는 이러한 수평으로 배열된 데이터에서 특정 값을 빠르게 찾아주는 강력한 도구입니다.
HLOOKUP함수란?
HLOOKUP(Horizontal Lookup)
엑셀에서 수평으로 배열된 데이터를 찾는 함수. 특정 키(Key)를 기준으로 표의 첫 번째 행에서 값을 검색하고, 그 키에 해당하는 열에 있는 값을 반환합니다.
■ [엑셀 필수 함수 TOP 10]
■ [날짜 시간 함수 TOP 20]
■ [엑셀 재무 함수 TOP 20]

▧ HLOOKUP함수의 기본 구조
=HLOOKUP(A, B, C, D)
A: 검색할 값(키)입니다.
(이 값은 검색하려는 표의 첫 번째 행)B: 검색할 데이터가 있는 범위입니다.
(첫 번째 행이 A와 일치하는 값이어야 합니다.)
C: B에서 반환하려는 값이 있는 행의 번호입니다.
(첫 번째 행을 1로 시작하여 아래로 숫자를 셉니다.)D: [선택 사항] 정확히 일치하는 값(FALSE)
근접한 값(TRUE)를 지정합니다.
HLOOKUP 함수 사용 예시
▧ 예시 1: 기본 사용법
아래와 같이 학생들의 시험 성적이 수평으로 정리된 데이터가 있다고 가정해보겠습니다.
데이터
| 이름 | 김철수 | 이영희 | 박민수 |
|---|---|---|---|
| 국어 | 85 | 78 | 92 |
| 수학 | 90 | 88 | 76 |
| 영어 | 95 | 82 | 88 |
이제, 김철수 학생의 수학 점수를 조회하고 싶다면 다음과 같은 HLOOKUP 함수를 사용할 수 있습니다.
|
=HLOOKUP(“김철수”, A1:D4, 2, FALSE)
|
위의 함수는 김철수이라는 값을 첫 번째 행에서 찾고, 두 번째 행에서 김철수에 해당하는 점수 85을 반환합니다.
▧ 예시 2: 근사값 찾기
HLOOKUP 함수는 [범위검색]을 TRUE로 설정하면 근사값을 찾을 수 있습니다.
데이터
| 점수 | 60 | 70 | 80 | 90 | 100 |
|---|---|---|---|---|---|
| 학점 | F | D | C | B | A |
학생이 85점을 받았다고 가정할 때, 이 점수에 해당하는 학점을 조회하려면 아래와 같은 함수를 사용할 수 있습니다. 그리고 데이터 값은 오름차순으로 정리 되어 있어야 정상적으로 작동합니다.
|
=HLOOKUP(85, B1:F2, 2, TRUE)
|
결과는 C가 됩니다. 85는 80과 90 사이에 위치하고, 근사값으로 C를 반환하기 때문입니다.

HLOOKUP 실생활 활용
▧ 사례 1: 사원 근무 시간 조회
회사에서 각 사원의 월별 근무 시간이 가로로 정리되어 있다고 가정해보겠습니다. 특정 사원의 특정 달의 근무 시간을 조회할 때 HLOOKUP 함수를 사용할 수 있습니다.
| 월 | 1월 | 2월 | 3월 | 4월 |
|---|---|---|---|---|
| 김철수 | 160 | 172 | 168 | 174 |
| 이영희 | 155 | 162 | 169 | 175 |
| 박민수 | 158 | 165 | 171 | 170 |
이 경우, 이영희 사원의 3월 근무 시간을 조회하려면 다음과 같은 함수를 사용할 수 있습니다.
|
=HLOOKUP(“3월”, B1:E4, 3, FALSE)
|
결과는 169가 됩니다.

▧ 사례 2: 온라인 쇼핑몰의 제품 리뷰 조회
다양한 제품의 월별 리뷰 점수를 조회해야 한다고 가정해보겠습니다. 제품 리뷰 점수가 가로로 정리된 데이터를 기반으로 특정 제품의 특정 월 리뷰 점수를 조회할 때 HLOOKUP 함수를 활용할 수 있습니다.
| 월 | 1월 | 2월 | 3월 | 4월 |
|---|---|---|---|---|
| 제품 A | 4.5 | 4.2 | 4.7 | 4.8 |
| 제품 B | 4.0 | 4.1 | 4.3 | 4.6 |
| 제품 C | 3.8 | 3.9 | 4.2 | 4.5 |
예를 들어, 제품 B의 3월 리뷰 점수를 조회하려면 다음과 같은 함수를 사용할 수 있습니다.
|
=HLOOKUP(“3월”, B1:E4, 3, FALSE)
|
이 함수는 제품 B의 3월 리뷰 점수인 4.3을 반환합니다.

HLOOKUP 함수의 한계와 대안
HLOOKUP함수는 수평으로 정리된 데이터를 검색할 때 사용 검색할 값이 표의 첫 번째 행에 있어야 하고 왼쪽에서 오른쪽으로만 검색할 수 있습니다. INDEX와 MATCH 함수의 조합으로 데이터를 검색가능
| 월 | 1월 | 2월 | 3월 | 4월 |
|---|---|---|---|---|
| 김철수 | 160 | 172 | 168 | 174 |
| 이영희 | 155 | 162 | 169 | 175 |
| 박민수 | 158 | 165 | 171 | 170 |
INDEX와 MATCH 함수 사용법
▧ INDEX와 MATCH 함수 사용법
예를 들어, 이영희 사원의 3월 근무 시간을 조회하려면 다음과 같은 방식으로 INDEX와 MATCH 함수를 사용합니다. INDEX와 MATCH 함수를 사용하여 특정 사원의 특정 달 근무 시간을 조회합니다
|
=INDEX(B2:E4, MATCH(“이영희”, A2:A4, 0), MATCH(“3월”, B1:E1, 0))
|
▧ 함수의 동작 방식
1. MATCH("이영희", A2:A4, 0)
A2범위에서 “이영희”를 찾아 그 위치를 반환합니다. 이 경우, “이영희”는 두 번째 위치에 있으므로 2를 반환합니다.
2. MATCH("3월", B1:E1, 0)
B1범위에서 “3월”을 찾아 그 위치를 반환합니다. 이 경우, “3월”은 세 번째 위치에 있으므로 3을 반환합니다.
3.INDEX(B2:E4, 2, 3)
B2범위에서 두 번째 행, 세 번째 열에 위치한 값을 반환합니다.
이 값은 이영희의 3월 근무 시간인 169입니다.
▧ 결과와 요약
이 함수는 이영희 사원의 3월 근무 시간인 169를 반환합니다.INDEX 함수는 데이터를 반환하는 역할을 하며, MATCH 함수는 열과 행의 위치를 찾는 데 사용됩니다.

FAQ
Q: HLOOKUP 함수에서 #N/A 오류가 발생하는 이유는?
A: #N/A 오류는 lookup_value가 table_array의 첫 번째 행에서 찾을 수 없을 때 발생합니다.
Q: HLOOKUP 함수를 사용할 때 참조할 테이블이 너무 커서 속도가 느려집니다. 해결 방법이 있나요?
A: INDEX와 MATCH 함수 조합을 사용해보세요. 또한, 데이터를 정렬하여 검색 속도를 개선할 수 있습니다.
Q: HLOOKUP 함수에서 텍스트와 숫자가 혼합된 데이터를 어떻게 처리하나요?
A: 데이터 형식을 통일해 주세요.



