티스토리 뷰

이전 게시물에 이어 엑셀 찾기와 참조 함수를 계속합니다.
엑셀 찾기와 참조함수는 컴퓨터활용능력 3급에서는 볼 수 없는 함수들 입니다. 이 함수들은 아래와 같습니다.


- VLOOKUP, HLOOKUP,CHOOSE, INDEX


지난 게시물에서 이중 엑셀 VLOOKUP 함수를 살펴보았습니다. 이번에는 나머지 함수들을 살펴볼까 합니다.


1. 엑셀 HLOOKUP 함수

  정의: 범위의 최상위 행을 수평으로(행으로) 검색하여 조건을 만족하면 열 번호에서 그 값을 얻습니다.
  형식: =HLOOKUP(검색값 ,범위, 열번호, [검색 유형])
  사용방법: =HLOOKUP("123", A1:H4, 2)
  사용결과: 문자열 "123" 을 A1에서 H4 범위 중 첫 번째 행에서 수평으로 찾습니다. 그러니까 검색 범위가 A1:H1이 되는 거네요. 이 범위에서 찾아서 "123"이 검색 된다면 A1:H4 에서 2 번째 행의 값을 반환합니다. 즉 A2:H2 가 반환할 값들의 집합이 되는 거네요. 이해되시나요.. 엑셀 VLOOKUP 함수를 옆으로 뉘어 놓았다 생각하시면 되겠네요.


- 참, 엑셀 VLOOKUP 함수에서 [검색 유형] 인수를 설명드린다는것을 잊었네요.. 지금 설명드립니다. 이 검색 유형은 옵션형 인수 입니다. 생략하면 기본값으로 인식됩니다.
그럼 기본값은 뭘까요? 기본값은 1 혹은 TRUE입니다. 이는 범위에서 검색값을 검색하는 방법을 말하는 것인데 0 혹은 FALSE 는 검색값과 정확히 일치하는 값을 찾겠다는 옵션잆니다. 1 혹은 TRUE 는 비슷하게 일치하는 값을 찾겠다는 말이구요..  비슷하게 일치하는 값을 찾을때는 검색값이 반드시 오름 차순 정렬되어 있어야 합니다. 그렇지 않으면 정확한 값을 찾을 수 없습니다.


=HLOOKUP("축", A1:C4, 2, TRUE)
행 1에서 '축'을 찾고 같은 열에 있는 행 2의 값을 반환합니다


=HLOOKUP("베어링", A1:C4, 3, FALSE)
행 1에서 '베어링'을 찾고 같은 열에 있는 행 3의 값을 반환합니다


=HLOOKUP("B", A1:C4, 3, TRUE)
행 1에서 'B'를 찾고 같은 열에 있는 행 3의 값을 반환합니다. B와 정확히 일치하는 값이 없으므로 'B' 보다 작은 값 중 가장 큰 값(축)이 사용됩니다


=HLOOKUP("볼트", A1:C4, 4)
행 1에서 '볼트'를 찾고 같은 열에 있는 행 4의 값을 반환합니다


=HLOOKUP(3, {1,2,3; "a","b","c"; "d","e","f"}, 2, TRUE)
배열 상수의 첫 행에서 3을 찾고 같은 열의 행 2에 있는 값을 반환합니다


기출 예제: 진료코드[C3:C9]와 진료코드표[A12:E14]를 이용하여 진료과목을 구하시오.(컴퓨터활용능력 2급 13회 A형)
- VLOOKUP, HLOOKUP 중 알맞는 함수를 선택하여 사용

 


기출 풀이: E3 셀에 셀 포인트를 놓고 다음의 수식을 입력합니다.

=HLOOKUP(C3,$B$12:$E$14,3,FALSE)

입력 후 채우기 핸들(점끌기탭)을 끌어 E9 셀까지 수식복사 합니다.

수식을 설명드리면 문제는 '진료코드'를 보고 '진료과목'을 얻어내는 문제입니다.
해서 C3 셀의 '진료코드'를 '진료코드표' B12:E14 범위의 맨 위 줄에서 찾습니다. 그리고 검색 범위의 3번째 행에서 '진료과목'을 얻어 내는 것이지요.
검색범위[B12:E14]는 엑셀 절대 참조로 지정하셔야 합니다. 그래야 아래로 수식 복사시 검색 범위가 따라서 움직이지 않습니다.
또 한가지 이문제에서 주의 하셔야 할 것은 마지막 FALSE 옵션을 반드시 넣어주셔야 한다는 것입니다. 마지막의 FALSE 를 생략하면 기본값인 TRUE로 인식합니다. TRUE는 비슷한값을 찾겠다는 것이지요. 해서 정확한 결과를 얻어 내기가 곤란합니다. 대부분의 문자열를 찾는 문제에서는 FALSE 옵션을 기본으로 입력해 주세요. 엑셀 VLOOKUP 함수 도 마찬가지겠지요^^.


* 나머지 엑셀 CHOOSE 함수와 엑셀 INDEX 함수는 다음 게시물로 넘어가야 할 것 같습니다.

댓글