안녕하세요.
전 글에서는 vlookup을 할 때 복수조건이라면 하나의 조건으로 만들 후에 vlookup을 사용하기를 했었죠.
그것은 조금 어렵게 느껴지는 index와 match를 피하고 싶은 마음을 갖고 계신분들에게는 최고라고 할 수 있지 않을까 생각합니다.
이번에는 딱 한번만 이해하면 너무나도 쉬워지는!
복수조건 때문에 vlookup이 안될 때 사용할 수 있는!
vlookup을 해야 하는데 찾을 값이 왼쪽이 아닌 오른쪽에 있을때!
그럴때는 index와 match로 한방에 해결할 수 있습니다.
이게 뭐야? 라고 생각하시는 분들을 위해 잠시 설명드리자면...
index는 범위를 지정하고 지정된 범위에서 가로 몇번째, 세로 몇번째에 무엇이 있니? 라고 물어볼 수 있는 함수입니다.
match는 아래로 또는 오른쪽으로 찾고 싶은 값이 몇번째 있니? 라고 물어볼 수 있는 함수입니다.
참 쉽죠윙?
복수 조건, vlookup으로 안될때 index와 match 함수로 사용.
1. 아래 그림은 vlookup으로 불가능합니다. 그 이유는 두가지입니다.
- ① 찾아야할 것이 ② 범위보다 왼쪽에 있다.
- ② 조건이 2개 있다.
① 찾아야할 것이 왼쪽에 있어서 vlookup이 안된다면!?
1. index와 match의 조합으로 해결합니다.
- index함수는 =index(범위, 세로 몇 번째, 가로 몇번째) 라고 사용합니다. 따라서 세로 몇 번째인지를 숫자로 표현하여 불러올 위치를 선정하고 가져오는 것입니다. 반환하는 값은 셀에 있는 데이터입니다.
- match함수는 =match(찾을값, 범위, 정확한일치 또는 유사일치)입니다. 반환하는 값은 위치가 몇번째 있는지 숫자를 반환합니다.
- 즉! 논리로 표현하자면 ①에서 찾는데, 찾을 곳의 세로는 match로 찾은 숫자만큼 내려가고, 오른쪽은 ④1칸(제자리)에 있는 값을 가져와라! 라고 하는것입니다.
- 세로 match로 찾은 숫자만큼의 논리는 ②I3(바지)를 ③D3~D9까지의 범위의 몇번째인지를 찾는데 정확히 I3(바지)과 똑같은 것을 찾아서 몇번째인지를 알려달라는 것입니다.
① 가져올 값이 있는 범위
② 찾을값
③ 찾을값이 있는 범위
④ 정확한일치(0) 또는 보다작음(1) 또는 보다큼(-1)
⑤ 찾는 곳의 가로(모르시면 그냥 한줄 안에서 찾는거니까 1 쓰세요~)
2. 조금더 풀어서 그림으로 보여드리자면!
- match만 딱 보면, ①에 입력되어 있는 함수는 =MATCH(I3,D3:D9,0) 입니다. 반환되는 값은 1입니다.
②를 ③에서 찾는데 몇번째에 그 값이 있는지를 말하는 것입니다. ③의 첫번째에 있으니 답은 1입니다.
- index는 =index(범위, 세로 몇 번째, 가로 몇번째) 이렇게 쓰기 때문에 ..
- ①의 범위에서 match로 찾은 1을아래로 내려가고 index함수의 마지막에 있는 숫자인 1만큼 오른쪽에 있는 값을 추출하라는 것입니다.
- index 함수는 시작지점을 1로 계산하기 때문에 아래한칸, 오른쪽 한칸은 제자리겠네요. 그럼 반환되는 값은 10,000입니다.
- 따라서 찾아야하는 범위 오른쪽에 조건이 있을때에도 찾아야하는 값을 찾을 수 있겠습니다!
② 조건이 복수로 있어서 vlookup이 안된다면!?
이럴때는 index, match, index를 써줘야 합니다. 결론부터 말씀드리면 함수식은 아래와 같습니다.
=INDEX($C$3:$C$9,MATCH(I3&J3,INDEX($D$3:$D$9&$E$3:$E$9,),0),1)
① 값이 있는 범위
② 찾아야할 조건을 &로 묶기
③ 찾아야할 범위를 ②에서 묶은 순서대로 &로 묶기
④ 찾은값이 찾을범위에 정확하게 일치
⑤ 값이 있는 범위의 1칸
※ 주의하실 점은 범위는 반드시 같은 행으로 써야 합니다. C열의 3부터 C열의 9까지를 범위로 잡았다면 무엇이든지 3~9까지로 범위를 잡아야 한다는것입니다~
- 논리를 보면
C3~C9까지에서 찾아야 하는데 C3에서 시작해서 아래로 match와 index(그림 [복수 조건의 index, match, index]의 함수의 빨간줄과 파란줄) 만큼 내려가고, 오른쪽으로는 한칸에 있는 값을 찾아라 입니다.
- match와 index 조합의 논리는 찾을 값은 I3&J3(바지분홍바지)이며, 범위는 D3~D9&E3~D9(종류&세분류)의 몇번째에 있는지 숫자로 보여줘 입니다.
이렇게 하면 복수 조건의 값을 찾을 수 있습니다.
여기까지 잘 따라오셨으면 좋겠네요!
여러분의 성공을 바라며! 저는 이만 뿅~
'엑셀 > 잡식엑셀' 카테고리의 다른 글
엑셀 중복값 제거 함수 (0) | 2020.09.10 |
---|---|
엑셀 시트 복사할때 다른 시트나 다른 파일 참조 방지하는 방법 (0) | 2020.09.09 |
[엑셀] vlookup 복수 조건으로 가져오기 (0) | 2020.09.08 |
[엑셀] vlookup 잘모르겠다면 필독 (0) | 2020.09.08 |
참 쉬운 엑셀 그래프 만들기 (0) | 2020.09.01 |