VLOOKUP 첫 행만 나올 때 여러 행 전부 뽑는 법

2026-09-02


같은 거래처가 표에 열 줄 들어 있는데 VLOOKUP을 걸면 맨 위 한 줄만 나오고, 아래로 끌어내려도 똑같은 값만 반복되는 상황이라면 수식을 잘못 쓰신 게 아닙니다.

먼저 안 되는 것부터 말씀드립니다. VLOOKUP으로는 여러 행을 못 가져옵니다. 조건에 맞는 첫 번째 행을 찾으면 거기서 멈추도록 만들어진 함수라서, 인수를 어떻게 바꾸셔도 결과는 같습니다. 함수 자체를 바꾸셔야 합니다. 그리고 아래 세 방법 중 첫 번째는 마이크로소프트365나 엑셀 2021 이상에서만 됩니다. 2019 이하라면 두 번째나 세 번째로 가셔야 합니다.

1. FILTER (365 · 2021 이상)

=FILTER($C$2:$C$1000, $A$2:$A$1000=$E$1, "없음")

A열에서 E1과 같은 것을 모두 찾아 C열 값을 세로로 뿌립니다. 아래로 끌 필요도, 배열 입력법도 필요 없습니다.

2. INDEX + SMALL 배열수식 (구버전)

=IFERROR(INDEX($C$2:$C$1000, SMALL(IF($A$2:$A$1000=$E$1, ROW($A$2:$A$1000)-ROW($A$2)+1), ROW(1:1))), "")

엔터 대신 Ctrl+Shift+Enter로 입력한 뒤 아래로 끌어내립니다.

인터넷 예제에 자주 보이는 -4 같은 숫자가 이 자리에 박혀 있는 경우가 많은데, 그건 그 예제의 데이터가 5행부터 시작해서 나온 값입니다. ROW는 시트의 실제 행번호를 돌려주는데 INDEX는 범위 안에서 몇 번째인지를 원하니, 시작행에서 1을 뺀 만큼을 빼주는 겁니다. 2행부터면 -1입니다. 위처럼 -ROW($A$2)+1로 적으면 시작행이 바뀌어도 알아서 맞습니다. 숫자를 직접 박아 두면 나중에 행을 하나 삽입하는 순간 조용히 어긋납니다.

맨 끝 ROW(1:1)은 아래로 끌 때 1, 2, 3으로 올라가는 순번 역할입니다. 여기에 $를 붙이면 첫 값만 계속 나옵니다.

3. 보조열 순번 + VLOOKUP (가장 덜 깨지는 방법)

수식을 계속 유지보수해야 하는 파일이라면 이 방식이 편합니다. 빈 열에 이렇게 넣습니다.

=$A2&"-"&COUNTIF($A$2:$A2,$A2)

$A$2:$A2에서 앞쪽만 절대참조인 게 핵심입니다. 아래로 끌면 범위가 늘어나면서 같은 값의 몇 번째인지를 셉니다. 이제 이 보조열을 첫 열로 하는 범위에 평범한 VLOOKUP을 겁니다.

=IFERROR(VLOOKUP($E$1&"-"&ROW(1:1), $G$2:$J$1000, 4, 0), "")

배열수식이 아니라서 파일이 무거워지지 않고, 나중에 다른 사람이 열어봐도 무슨 뜻인지 읽힙니다.

실무에서 걸리는 함정

빈 셀입니다. 찾을 값 칸(E1)을 비워두면 엑셀이 빈 셀을 0으로 보기 때문에 A열의 빈칸들이 전부 조건에 맞는 것으로 잡혀 엉뚱한 줄이 딸려옵니다. 조건을 ($A$2:$A$1000=$E$1)*($A$2:$A$1000<>"")로 바꾸면 막힙니다.

숫자처럼 보이는 텍스트입니다. 쇼핑몰에서 내려받은 정산 파일은 주문번호나 상품코드가 텍스트로 들어오는 경우가 흔합니다. 셀 안에서 값이 왼쪽에 붙어 있으면 텍스트입니다. 눈으로는 같은데 비교가 안 맞아 결과가 하나도 안 나옵니다. 양쪽을 &""로 붙여 텍스트로 통일하거나, 반대로 -- 를 앞에 붙여 숫자로 통일하십시오. 섞어두면 안 됩니다.

눈에 안 보이는 공백입니다. TRIM으로 털었는데도 안 맞으면 일반 공백이 아니라 웹에서 딸려온 줄바꿈 없는 공백(CHAR(160))일 가능성이 큽니다. =TRIM(SUBSTITUTE(CLEAN(A2),CHAR(160),""))로 한 번 정리한 열을 만들어 비교하십시오. =LEN(A2)=LEN(E1) 길이를 비교하면 원인이 한눈에 드러납니다.

범위를 A:A처럼 열 전체로 잡는 것입니다. 배열수식에서는 백만 행짜리 배열이 만들어져 재계산 때마다 파일이 멈춥니다. 데이터 끝보다 조금 넉넉하게만 잡으십시오.

FILTER 쪽 오류도 알아두시면 좋습니다. 조건에 맞는 게 하나도 없는데 세 번째 인수를 안 적으면 #CALC!가 뜹니다. 결과가 뿌려질 아래 칸에 뭐라도 들어 있으면 #SPILL!이 뜨는데, 이건 수식이 틀린 게 아니라 자리가 없다는 뜻입니다.

한 번 쓰고 마는 작업이면 자동 필터로 걸러 복사하거나 피벗 테이블로 뽑는 쪽이 더 빠릅니다. 매달 같은 형식의 파일을 반복해서 처리하실 때만 수식으로 고정해 두시는 편을 권합니다.

지금 그 파일, 어디가 문제인지 먼저 보시겠습니까

CSV 를 넣으면 계산이 틀어지는 자리를 찾아 드립니다. 무료이고 파일은 서버로 올라가지 않습니다 — 브라우저 안에서만 처리되고 저희도 내용을 볼 수 없습니다.

정산 파일 진단기 열기  ·  무료 자료실

매달 같은 순서로 고치고 계신다면 그 순서를 프로그램으로 옮겨둔 것이 있습니다 — 쇼핑몰 월 정산 자동화. 되는지부터 보시려면 무료 진단.

CHEONOK SYSTEM · 업무 자동화 제작
안 되는 파일이면 안 된다고 말씀드립니다 · 문의 actorlee007@gmail.com
매출이나 수익을 보장하지 않습니다.