로봇화/엑셀
엑셀 SUMIF, INDEX, MATCH 활용
깨끗한눈빛
2017. 5. 26. 17:54
회사 공장A와 공장B에서 각각 매입한 금액을 거래처 별로 정리해야 했다.
매입내역 시트 하나, 합계를 낼 완성시트 하나 준비.
[ 매입 내역 시트 '매입' ]
[ 최종 결과 시트 'sheet1' ]
데이터시트에 거래처가 중복되지 않다면 VLOOKUP을 쓰겠지만
VLOOKUP은 찾은 값의 맨 처음 값만 끌어오고 중복을 인식하지 못했다.
SUMIF 라는 함수로 간단하게 해결할 수 있었다.
SUMIF
SUMIF(셀을 찾을 범위, 찾는 셀, 합계 낼 값들의 범위)
해당 셀을 찾아 값을 합함.
범위 내에 찾는 셀이 중복될 때도 사용할 수 있음.
셀을 찾는 범위와 합계 낼 값의 범위를 각각 알려줘야함.
=SUMIF(내역!$F:$F,$A2,내역!$H:$H)
INDEX: 참조범위 내에서 x행, y열에 위치한 값을 불러옴
INDEX(전체 참조 범위, 불러올 행 값, 불러올 열 값)
MATCH: 참조범위 내에서 셀의 행(또는 열) 값을 반환 (행이나 열 중 하나만 가능)
MATCH(찾는 셀, 셀을 찾을 범위, 정확한일치0)
=INDEX(내역!$F:$H, MATCH($A9,내역!$F:$F,0), 3)
두 지점에서 한 거래처에서 매입을 했고, 이를 구분하고 싶을 때
합에서 지점1의 매입액을 빼 줌
(지점1의 매입액: VLOOKUP)
=SUMIF(내역!$F:$F,$A9,내역!$H:$H)-INDEX(내역!$F:$H, MATCH($A9,내역!$F:$F,0), 3)
총합 일치 여부 검사
=IF(C18-SUM(내역!I:I)'=0, "OK")