사용자 정의 함수는 복잡한 수식을 간단하게 만드는 편리함은 있는데,
내장 함수에 비해 속도가 너무 느립니다.
따라서, 열을 결합한 값을 찾을 때 Vlookup함수로는 안되니까,
새로운 열에 열을 결합한 데이터를 추가한 후 Vlookup함수를 실행하는 것이 좋습니다.
다만 이렇게 하면 보기에 안좋은 열이 생기는 것이 단점입니다.
위 화면은 나라별, 연도별 인구수를 오른쪽 표에서 찾아서 C열에 표시하려고 하는 것입니다.
1. 문제점
VLookup 함수는 찾을 값은 찾을 범위의 첫번째 열에서 찾기 때문에
=VLOOKUP(A2&B2,$F$2:$F$7&$G$2:$G$7&$H$2:$H$7,3,0)라고 입력해도 첫번째 열인 F열에서 A2셀과 B2셀을 결합한 값을 찾기 때문에 #N/A 에러가 발생한 것입니다.
2. 해결책
(1) 새로운 열에 결합한 값 입력
VLookup 함수는 찾을 범위의 첫번째 열에서 값을 찾기 때문에 인구수의 왼쪽에 찾을 값이 있도록 해야 합니다.
따라서, G열과 H열 사이에 넣어도 되는데, 보기 좋게 E열에 결합 값을 넣겠습니다.
그리고, A열과 B열을 결합한 값도 B열과 C열 사이에 넣어도 되지만 A열 왼쪽에 열을 삽입해서 값을 추가하도록 하겠습니다.
A열을 추가해서 기존 E열이 F열로 이동했습니다.
A1셀에서 A9셀까지 선택한 후 결합 연산자인 &를 이용해
=b1&c1이라고 입력하고 Ctrl + Enter키를 누릅니다.
F2셀부터 F7셀까지 선택한 후
=g2&h2라고 입력하고 Ctrl + Enter키를 누릅니다.
(2) 결합한 값을 기준으로 Vlookup 함수를 이용한 수식 입력
(가) 방법 1
D2셀에서 D9셀까지 선택한 후
=VLOOKUP(A2,$F$2:$I$7,4,0)이라고 입력한 후
Ctrl + Enter키를 눌러 D2셀부터 D9셀까지 한꺼번에 수식을 입력합니다.
순식간에 인구수를 구해줍니다.
(나) 방법 2
A열을 잘라낸 후 D열을 클릭한 후 '잘라낸 셀 삽입' 메뉴를 눌러 C와 D열 사이에 삽입하고,
F열을 잘라내서 i열을 클릭하고 삽입 메뉴를 눌러서 H열과 I열 사입에 삽입합니다.
그런데 수식에서 찾을 범위가 절대 참조 형식으로 되어 있어서 자동으로 변경되지 않으므로
=VLOOKUP(C2,$F$2:$I$7,4,0) 상태인데
찾을 범위로 H2셀에서 i7셀을 선택한 후 F4키를 눌러서 $H$2:$I$7로 변경하고
찾을 값이 i열에 있으므로 col_index_num을 2로 수정해서
=VLOOKUP(C2,$H$2:$I$7,2,0) 로 수식을 변경하고 엔터키를 누릅니다.
그러면 인구수 50이 구해집니다.
D2셀의 오른쪽 아래 네모 모양의 채우기 핸들을 더블 클릭해서 수식을 D9셀까지 복사합니다.
(다) 열 숨기기
C열과 H열은 보일 필요가 없으므로
C열을 클릭한 후 Ctrl키를 누른 상태에서 H열을 클릭해서 C열과 H열을 선택한 후 H열에 마우스를 올려 놓고 마우스 오른쪽 버튼을 누른 후 나타나는 메뉴에서 '숨기기'를 누르면
깔끔한 화면이 됐습니다.
'Excel' 카테고리의 다른 글
정수에 가까운 숫자 찾기(1) (0) | 2023.08.05 |
---|---|
피벗 테이블 만들 때 '데이터 원본 참조' 에러가 나올 (0) | 2023.08.04 |
여러 가지 조건을 만족하는 값을 찾을 때(1) - VLookup, Index+Match, XLookup함수 (0) | 2023.07.24 |
텍스트로 된 수식의 값 구하기(3) - Let, Switch 함수 이용 (0) | 2023.07.18 |
텍스트로 된 수식의 값 구하기(2) - 사칙 연산자 적용 (0) | 2023.07.17 |