
얼마 전 조립 PC 부품 목록에서 모델명별 가격을 옮기다가, 같은 이름을 일일이 찾아 입력하는 게 더 오래 걸린다는 생각이 들었습니다. 이럴 때 VLOOKUP을 쓰면 견적서에 적힌 모델명을 기준으로 가격표의 값을 가져올 수 있습니다. 처음엔 수식이 길어 보여도, 어디를 찾고 몇 번째 열을 가져올지만 알면 어렵지 않습니다.
부품 가격표로 수식부터 만들어 보기
가격표의 A열에는 모델명, B열에는 판매가가 있다고 가정하겠습니다. A2에는 ‘SSD 1TB’, B2에는 89000, A3에는 ‘RAM 16GB’, B3에는 57000, A4에는 ‘CPU 7500F’, B4에는 215000이 들어 있습니다. 견적서의 D2에 ‘RAM 16GB’를 입력하고 E2에 아래 수식을 넣습니다.
=VLOOKUP(D2,$A$2:$B$4,2,FALSE)
결과는 57000입니다. D2의 글자를 A열에서 찾아 같은 행의 B열 값을 가져온 겁니다. 실제 견적서에서는 가격 표시 셀에 통화 서식을 적용하면 57,000원처럼 읽기 편합니다. 수식 안의 2는 ‘B열’이라는 뜻이 아니라, 지정한 범위 A:B에서 두 번째 열이라는 뜻입니다. 범위를 C:D로 바꾸면 두 번째 열은 D열이 됩니다.
네 가지 입력값은 이렇게 읽으면 됩니다
VLOOKUP의 기본 형태는 =VLOOKUP(찾을값,찾을범위,가져올열번호,일치방식)입니다. 위 수식을 부품 가격표에 맞춰 읽으면 다음과 같습니다.
- D2: 견적서에서 찾으려는 모델명
- $A$2:$B$4: 모델명과 가격이 들어 있는 가격표 범위
- 2: 가격표 범위에서 가져올 두 번째 열
- FALSE: 모델명이 정확히 일치하는 행만 찾기
달러 기호는 가격표 범위를 고정합니다. E2의 수식을 E3, E4로 복사하면 D2는 D3, D4로 바뀌지만 가격표 범위는 그대로 남습니다. 달러 기호 없이 A2:B4로 입력한 채 아래로 복사하면 검색 범위도 함께 내려가 첫 번째 부품이 범위 밖으로 밀릴 수 있습니다.
부품 코드나 모델명으로 가격을 찾을 때는 마지막 인수를 FALSE 또는 0으로 적는 습관이 좋습니다. 이 인수를 생략하면 근삿값 검색으로 처리됩니다. 가격표가 그 방식에 맞게 정렬돼 있지 않으면 엉뚱한 가격을 가져올 수 있습니다. 견적서에서는 비슷한 값보다 정확한 모델을 찾는 편이 안전합니다.
값이 없다고 나올 때 확인할 순서
수식 결과가 #N/A라면 먼저 D2의 값이 검색 범위 첫 번째 열인 A열에 실제로 있는지 확인합니다. VLOOKUP은 지정한 범위의 맨 왼쪽 열에서만 찾습니다. 가격표에서 모델명이 B열이고 가격이 A열이라면 범위를 넓혀도 왼쪽 가격을 가져오지 못합니다. 이 경우 모델명 열을 가격 열 왼쪽으로 옮기거나 다른 조회 함수를 써야 합니다.
눈으로는 같은 모델명인데 찾지 못한다면 앞뒤 공백을 확인합니다. ‘RAM 16GB’와 ‘RAM 16GB ’는 서로 다른 문자열입니다. 복사해 온 목록에 공백이 섞였다면 빈 셀에서 =TRIM(A2)로 공백을 정돈한 뒤 결과를 값으로 붙여넣어 가격표를 고칠 수 있습니다. 중간에 여러 칸 들어간 공백도 함께 확인하는 편이 좋습니다.
부품 번호가 숫자로 저장된 셀과 문자로 저장된 셀이 섞인 경우도 흔합니다. 특히 ‘00125’처럼 앞에 0이 붙는 코드는 숫자로 바꾸면 0이 사라집니다. 코드 열과 찾을값 열의 형식을 모두 문자로 맞추고, 실제 셀 값도 같은지 확인해야 합니다. 셀 서식만 ‘텍스트’로 바꿔서는 이미 저장된 값이 자동으로 고쳐지지 않습니다.
빈칸 처리보다 원본 확인이 먼저입니다
견적서에 가격 대신 #N/A가 보이는 게 불편하다면 =IFERROR(VLOOKUP(D2,$A$2:$B$4,2,FALSE),"가격 확인")처럼 표시할 수 있습니다. 다만 이 수식은 찾지 못한 경우뿐 아니라 범위나 열 번호를 잘못 지정한 오류도 같은 문구로 가립니다. 수식을 만든 직후에는 원래 VLOOKUP으로 결과를 확인하고, 정상적으로 찾는 걸 확인한 다음 표시 문구를 붙이는 게 낫습니다.
같은 모델명이 가격표에 두 번 들어 있으면 VLOOKUP은 위에서 먼저 만난 행의 가격을 가져옵니다. 예를 들어 첫 번째 ‘SSD 1TB’가 89000원이고 아래쪽 같은 이름이 95000원이라면 결과는 89000원입니다. 색상이나 제조사에 따라 가격이 다른 부품이라면 모델명만으로 조회하지 말고, 구분할 수 있는 고유 부품 코드를 기준으로 잡는 편이 정확합니다.
제가 견적서에서 가장 먼저 확인하는 것도 함수 자체보다 가격표의 기준 열입니다. 모델명이나 코드가 한 가지 방식으로 입력돼 있고 중복이 없다면, VLOOKUP 수식 한 줄로도 가격 옮기는 시간을 꽤 줄일 수 있습니다.