병합 셀 표 추출이 왜
실패할까? 4가지 일반적인 원인과 해결 방법
당신만 겪는 문제가 아닙니다 — 이것은 가장 흔한 추출 문제입니다. 도구가 텍스트를 읽어내도, 데이터가 있어야 할 자리에 빈 셀이 생기고, 열 헤더가 엉뚱한 열에 흩어지거나, 행이 통째로 사라진 결과가 나옵니다. 원본 문서의 병합 셀이 거의 항상 원인이며, 해결 방법은 어떤 종류의 병합 셀 패턴이 문제를 일으키는지 이해하는 데 달려 있습니다.

핵심 요점
- 추출이 오류 없이 완료되었지만 전체 열이 비어 돌아왔다면, 원본의 모든 병합 셀이 도구를 조용한 추측으로 몰아넣었기 때문입니다.
- 그 빈 셀들은 무작위가 아닙니다 — 네 가지 특정 병합 셀 패턴이 원인이며, 각각 30초 안에 진단할 수 있는 명명된 근본 원인이 있습니다.
- 추출 후 단일 검사 — 남은 병합 셀 해제, 값 전파를 위한 아래로 채우기, 원본 대비 행 수 확인 — 모든 도구가 취약한 조용한 손상을 잡아냅니다.
익숙한 상황인가요?
이 페이지에 오셨다면, 지금 보고 계신 상황이 아래 시나리오 중 하나와 일치할 가능성이 높습니다:
- 데이터가 있어야 할 열의 셀이 비어 있음. 세 행에 걸쳐 병합된 카테고리 라벨("Q1 Revenue") — 첫 번째 행에만 텍스트가 있고, 다음 두 행은 비어 있습니다.
- 데이터가 잘못된 열로 밀려 들어감. "Amount"에 속해야 할 값이 "Description"에 들어간 경우 — 병합된 헤더가 열 경계 감지를 혼란스럽게 만들었기 때문입니다.
- 열 헤더가 누락되거나 뒤섞임. "Product Details"가 다섯 개 열에 걸쳐 있는 두 행 헤더 블록 — 추출 과정에서 단일 열로 축소되었습니다.
- 행 수가 맞지 않음. 원본에는 14개의 데이터 행이 있는데 출력에는 9개만 표시되거나 그 반대인 경우 — 병합된 행 경계가 잘못 계산되었기 때문입니다.
각 증상은 서로 다른 근본 원인을 가리킵니다. 좋은 소식은 어떤 패턴이 작용하고 있는지만 알면 해결 방법은 간단하다는 것입니다.
큰 그림: 병합된 셀이 추출을 깨뜨리는 이유

테이블은 그리드입니다 — 행과 열이 셀을 형성하고, 각 셀은 하나의 값을 보유합니다. 병합된 셀은 인접한 셀들을 하나의 시각적 단위로 결합합니다. 화면에서는 하나의 큰 셀로 보이지만, 기본 구조에서는 여전히 별도의 셀로 취급되며 그중 하나만 실제로 데이터를 포함합니다.
시각적 모양과 구조적 현실 사이의 이 간격이 추출 도구가 실패하는 지점입니다. 기존 OCR을 사용하든 비전 AI 모델을 사용하든, 추출 엔진은 결정을 내려야 합니다: "이 시각적 범위를 어떻게 깨끗한 그리드로 다시 매핑할까?" 바로 이 결정에서 문제가 발생합니다.
병합된 셀은 추출 도구가 추측하도록 강제합니다. 추측이 틀리면 두 방식 모두 실패합니다 — 그리고 병합된 셀의 경우, 틀릴 때가 많습니다.
근본 원인 1: 줄 단위 OCR은 2D 구조를 처리할 수 없음

증상
텍스트는 모두 존재하지만 행-열 매핑이 깨져 있습니다. "Part A | $12.50 | 3 | $37.50"이어야 할 행이 "Part A | $12.50 | "로 출력되고 나머지 값은 다음 줄로 밀려납니다. 여러 행에 걸쳐 있는 병합 셀은 출력에서 빈 행을 만듭니다.
근본 원인: 좌표 분열
기존 OCR 엔진은 문서를 순차적으로 처리합니다 — 줄은 위에서 아래로, 단어는 왼쪽에서 오른쪽으로. 문단에는 이 방식이 효과적입니다. 그러나 테이블의 경우 각 텍스트 블록을 독립적인 줄로 취급할 뿐, 열을 정의하는 수직 정렬을 이해하지 못합니다.
구체적인 예를 들어보겠습니다. 세 행에 걸쳐 "사무용품"이라고 적힌 병합 셀이 있는 구매 주문서를 가정해 봅시다:
| 카테고리 | 품목 | 수량 | 단가 |
|---|---|---|---|
| 사무용품 | 공책 | 10 | $3.50 |
| 펜 | 5 | $8.00 | |
| 스테이플러 | 2 | $12.00 |
줄 기반 OCR 엔진은 이를 다음과 같이 읽습니다:
줄 1: "사무용품" | "공책" | "10" | "$3.50"
줄 2: "펜" | "5" | "$8.00"
줄 3: "스테이플러" | "2" | "$12.00"무슨 일이 일어났는지 주목하세요: "사무용품"은 같은 수직 위치에서 발견되었기 때문에 줄 1에서 해당 행의 실제 데이터와 함께 읽혔습니다. 줄 2와 3에서 OCR 엔진은 "사무용품"이 여전히 해당 행을 지배한다는 것을 알지 못합니다 — 텍스트가 물리적으로 존재하지 않기 때문입니다. 그 결과 카테고리 열이 2행과 3행에서 비어 있는 추출 결과가 나오며, 카테고리별로 그룹화하는 모든 다운스트림 분석이 깨집니다.
해결 방법
전처리: 추출 전에 병합 셀 경계를 감지합니다. 일부 도구는 텍스트를 읽기 전에 먼저 문서 레이아웃을 분석합니다. 표 그리드와 병합 범위를 식별하는 방식입니다. 전체 2D 구조를 먼저 파악하면 추출 엔진은 "Office Supplies"가 1~3행에 걸쳐 있다는 것을 알고 출력의 세 행 모두에 해당 값을 전파할 수 있습니다. 현재 도구가 이 기능을 지원하지 않는다면 OCR이나 텍스트 추출 전에 별도 단계로 레이아웃 분석을 수행하는 도구를 찾아보세요. 이것이 행 기반 추출에서 업그레이드할 수 있는 가장 큰 개선점입니다.
근본 원인 2: 범위 모호성 — 어디에나 속하는 셀
증상
병합된 열 머리글로 인해 데이터가 잘못된 머리글 아래에 표시됩니다. 예를 들어 "Product Details | Q1 | Q2 | Q3 | Q4"라는 머리글이 있는 표에서 "Product Details"가 두 개의 하위 열에 걸쳐 있는 경우, 추출 결과는 두 하위 열을 하나로 합치거나 값을 중복해서 표시합니다.
근본 원인: 범위 모호성
병합된 셀이 여러 열에 걸쳐 있을 때 추출 도구는 "이 셀이 1열, 2열, 아니면 모든 열에 속하는가?"라는 질문에 답해야 합니다. 사람의 눈에는 명확해 보이지만 알고리즘에게는 모호한 문제입니다.
이 문제는 특히 패치 기반 분석을 사용하는 비전 AI 모델에서 까다롭습니다. 이러한 모델은 이미지를 작은 타일로 나누고 각각을 독립적으로 분석합니다. 다섯 개의 열에 걸친 병합 셀은 여러 타일에 걸쳐 조각납니다. 각 타일은 병합 셀의 일부만 보게 되고, 모델은 이를 다시 이어 붙여야 합니다. 이 과정에서 모든 이음새에서 오류가 발생합니다. 표 재구성의 실제 실패 사례를 분석한 Medium 기사에서도 정확히 이 문제를 지적했습니다. 이미지를 패치로 나누는 비전 모델은 "전역적 연속성에 의존하는 객체 — 표가 그중 하나 — 에서 성능이 저조합니다."
해결 방법
예상 구조에 맞춰 추출을 설계하세요. 원본 문서에 "Product Details (Item | SKU)" 같은 헤더가 있다는 것을 안다면, 도구가 계층 구조를 추측하도록 두지 말고 열 이름을 "Item"과 "SKU"로 직접 정의하세요. 맞춤 열 추출을 지원하는 ImageToTable.ai 같은 도구는 원하는 열을 정확히 지정할 수 있게 해줍니다. 그러면 AI는 각 필드의 의미를 이해하여 각 열을 문서의 올바른 하위 열에 매칭하며, 병합 경계를 추측하지 않습니다. 이렇게 하면 모호성 문제가 완전히 해결됩니다. 도구에 "이 병합 셀의 너비는 얼마인가요?"라고 묻는 대신 "이것들이 내가 필요한 열입니다. 문서에서 찾아주세요"라고 지시하는 것입니다.
근본 원인 3: 불규칙한 행 높이가 리듬을 깨뜨림
증상
추출된 테이블에 행이 너무 적거나 너무 많습니다. 테이블 전체 너비에 걸친 소계 행이 새 행으로 계산되어 완전히 건너뛰어지거나 추출된 테이블의 총 행 수가 원본과 일치하지 않습니다.
근본 원인: 행 높이 변동
대부분의 테이블 추출 알고리즘은 수평선이나 공백 간격을 감지하여 행 경계를 식별합니다. 여러 행에 걸친 병합 셀은 시각적 높이 패턴을 변경합니다. 더 높아지거나 더 낮아집니다. 어느 쪽이든 알고리즘의 행 경계 휴리스틱이 혼란스러워집니다.
이는 병합 셀이 대각선 경계를 만드는 계단형 패턴에서 특히 흔합니다. 알고리즘은 일관되지 않은 높이를 보고 전체 블록을 하나의 큰 행으로 처리할지 분할할지 판단할 수 없습니다.
해결 방법
후처리: 예상 구조와 행 수를 교차 확인하세요. 추출 후 빠른 검증을 실행하세요. 데이터 행 수가 예상과 일치하나요? 모든 인보이스에 3~12행의 라인 항목 섹션이 있다는 것을 안다면, 해당 범위를 벗어나는 출력에 플래그를 지정하세요. Excel에서는 간단한 COUNTA 확인이나 피벗 테이블을 사용하여 배치 간 행 수를 검증할 수 있습니다. 더 고급 도구는 추출된 구조를 예상 행·열 수와 자동으로 비교하고 불일치를 강조하여 수동 검토를 돕는 내장 검증 기능을 제공합니다.
근본 원인 4: 사후 검증 부재
증상
추출이 성공한 것처럼 보입니다 — 오류도, 시간 초과도 없지만 — 데이터를 사용할 때 값이 잘못된 행이나 열에 있다는 것을 발견하게 됩니다. 오류가 조용히 발생하므로 실패한 추출보다 더 위험합니다.
근본 원인: 사후 처리 붕괴
많은 추출 도구에는 감지된 텍스트 블록을 그리드에 다시 매핑하는 최종 조립 단계가 있습니다. 병합된 셀이 업스트림에서 문제를 일으킨 경우, 사후 처리 단계는 종종 직사각형 그리드에 맞추기 위해 셀을 축소하거나 채워서 이를 덮으려고 합니다. 여기서 조용한 데이터 손상이 발생합니다: 도구가 빈 셀을 인접 값으로 채우고, 전체 열을 왼쪽이나 오른쪽으로 이동시키거나, 결정한 그리드 모양에 맞지 않는 행을 삭제합니다.
구체적인 메커니즘: 사후 처리기는 감지된 셀 수에서 추론한 대상 그리드 모양을 가지고 있습니다. 병합된 셀이 이상을 만들 때 — 예를 들어 4×16=64 그리드여야 하는데 63개의 셀이 감지된 경우 — 엔진은 그 간격을 처리해야 합니다. 일부 도구는 빈칸으로 채웁니다. 다른 도구는 압축합니다: 63개의 셀을 64개 슬롯에 재분배하여 하나의 데이터 값을 잘못된 열로 밀어 넣습니다.
해결 방법
추출 후 검증을 강제하세요. 수동으로 하든 자동화하든, 병합된 셀이 있는 문서의 모든 추출 배치에는 교차 확인 단계가 포함되어야 합니다. 가장 실용적인 접근 방식: 추출된 테이블을 내보내고, Excel 또는 Google 스프레드시트에서 기본 제공되는 "셀 병합 해제" 기능을 사용하여 남아 있는 병합된 셀을 해제한 다음, "아래로 채우기"를 사용하여 새로 빈 셀에 값을 전파하세요. 이렇게 하면 원본 소스와 대조할 수 있는 깨끗한 직사각형 그리드가 생성됩니다.
실제로 효과가 있는 세 가지 해결 방법

위의 네 가지 근본 원인을 바탕으로, 가장 간단한 방법부터 가장 철저한 방법까지 실질적인 해결 경로를 제시합니다.
사용 중인 도구가 지원한다면, 전처리 단계로 레이아웃 분석 또는 표 구조 감지를 활성화하세요. 이렇게 하면 추출 엔진이 텍스트를 읽기 전에 병합된 범위를 포함한 전체 그리드를 식별할 수 있습니다. 이 기능이 없는 도구라면 문서를 미리 분할하는 것을 고려하세요. PDF의 경우 Adobe Acrobat의 "양식 준비"와 같은 도구로 경계를 수동으로 정의할 수 있습니다. 이미지의 경우 표 감지를 별도의 첫 단계로 수행하는 도구를 찾아보세요.
도구가 열을 추측하도록 두지 마세요. 열을 명시적으로 지정하세요. ImageToTable.ai의 맞춤 열 추출을 사용하면 원하는 열 이름을 정의할 수 있으며, AI는 위치가 아닌 의미론적 이해를 통해 각 열을 문서의 올바른 데이터에 매칭합니다. 즉, 병합된 헤더로 레이아웃 감지가 혼란스러워져도 AI가 "SKU"가 무엇을 의미하는지 알기 때문에 열 매핑은 여전히 정확합니다.
추출 후 Excel 또는 Google 스프레드시트에서 간단한 검증을 실행하세요. 병합된 상태로 남아 있는 셀은 병합을 해제하고, 채우기 아래로 값을 전파한 다음, 행 수가 원본 문서와 일치하는지 확인하세요. 일괄 처리의 경우 열당 COUNTA 수식을 설정하여 예상보다 항목 수가 적은 열을 표시하세요. 동일한 문서 유형을 정기적으로 처리한다면 이 검증을 템플릿으로 저장하세요. 실행하는 데 30초밖에 걸리지 않으며 거의 모든 무단 손상을 잡아냅니다.
언제 수동 처리가 필요한가: 모든 병합 셀이 자동으로 해결되지는 않습니다
일부 병합 셀 패턴은 고급 AI조차 처리하기 어렵습니다. 추출을 고치려고 시도하기보다 원본 문서를 수동으로 전처리하는 것이 나은 경우는 다음과 같습니다:
- 중첩 병합: 3행과 2열을 동시에 병합하는 셀은 어떤 도구로도 완벽하게 채울 수 없는 격자 구멍을 만듭니다. 추출 전에 문서를 더 단순한 테이블로 미리 분할하면 더 나은 결과를 얻을 수 있습니다.
- 계단식 병합 패턴: 1행이 A-B열을 병합하고, 2행이 B-C열을, 3행이 C-D열을 병합하는 대각선 경계 구조는 거의 모든 추출 엔진을 무너뜨립니다. 가장 효율적인 해결책은 추출 전에 원본 애플리케이션에서 문서를 평면 테이블로 내보내는 것입니다.
- 페이지 나누기를 가로지르는 병합 셀이 있는 다중 페이지 테이블: 최고의 도구도 여기서는 어려움을 겪습니다. 각 페이지를 독립적으로 처리하고 결과를 수동으로 이어 붙이는 것을 고려하세요.
솔직한 답변: 문서에 복잡한 중첩 또는 계단식 병합이 있고 월 50건 이상 처리한다면, 이러한 패턴을 기본적으로 처리하는 도구로 변경하는 ROI를 계산해 볼 가치가 있습니다. 가끔 처리하는 문서라면 추출 전 수동 전처리가 잘못된 출력과 씨름하는 것보다 비용이 저렴합니다.
자주 묻는 질문
AI 추출이 기존 OCR보다 병합 셀을 더 잘 처리하나요?
네 — 하지만 완벽하지는 않습니다. 비전 AI 모델은 문서를 줄 단위가 아닌 전체 레이아웃으로 분석하므로 병합 셀 경계를 줄 기반 OCR보다 더 정확하게 식별합니다. 그러나 AI 모델에게도 범위 모호성은 여전히 과제입니다. 패치 기반 분석이 병합 셀을 타일 전체에 걸쳐 분할할 수 있기 때문입니다. 레이아웃 분석과 의미 필드 매칭을 결합한 ImageToTable.ai와 같은 도구는 기존 OCR보다 병합 셀을 훨씬 더 잘 처리하지만, 특히 중첩 또는 계단식 패턴에서는 100% 면역이 아닙니다.
Excel에서 병합된 셀 추출 오류를 재처리 없이 수정할 수 있나요?
네, 대부분의 행 병합 패턴에서는 가능합니다. 열을 선택하고 홈 → 병합하고 가운데 맞춤 → 셀 병합 해제로 이동한 다음, 빈 셀을 선택하고 Ctrl+D를 눌러 값을 전파하세요. 열 병합 패턴의 경우 텍스트 나누기 또는 빠른 채우기를 사용하세요. 이는 임시 방편으로 작동하지만, 일괄 처리의 경우 추출 단계에서 오류를 수정하세요.
PDF의 병합된 셀은 Excel의 병합된 셀과 같은 문제인가요?
구조적으로는 그렇습니다. 하지만 PDF는 단순히 "병합 해제"할 수 없어 수정이 더 어렵습니다. PDF의 병합된 셀은 페이지 레이아웃에 고정되어 있으므로, 원본이 아닌 추출 시점에 수정해야 합니다.
병합된 셀처럼 보이지만 실제로는 그렇지 않은 테두리가 원본 문서에 있으면 어떻게 하나요?
흔한 경우입니다. 특히 스캔 문서에서 희미하거나 끊어진 표 테두리는 별도의 셀이 병합된 것처럼 보이게 할 수 있습니다. 대비를 높이도록 이미지를 전처리해 보세요. 희미한 테두리를 감지할 수 있게 됩니다. 구체적인 기법은 더 나은 감지를 위한 이미지 전처리 가이드를 참조하세요.
도구가 "표 추출 완료"라고 표시했는데 데이터가 잘못되었습니다. 무슨 일이 있었던 건가요?
이것이 근본 원인 4입니다. 후처리기가 감지된 텍스트를 격자로 조합했지만, 병합된 셀로 인해 플래그가 지정되지 않은 상위 오류가 발생했습니다. "성공"은 직사각형 격자가 생성되었음을 의미했지, 격자가 올바르다는 의미는 아니었습니다. 항상 샘플 출력을 검증하세요. 검증 워크플로 구축에 대한 자세한 내용은 표 추출 종합 문제 해결 가이드를 읽어보세요.
병합 셀은 추출 오류의 가장 흔한 원인입니다 — 하지만 어떤 패턴이 문제를 일으키는지 이해하면 해결 방법은 대개 간단합니다.
레이아웃 분석을 먼저 처리하는 도구로 직접 문서를 테스트해 보세요. 추출 엔진이 단어 하나를 읽기 전에 전체 그리드를 보면 많은 병합 셀 문제가 사라집니다.