구글 스프레드시트 VSTACK·HSTACK 사용법: 표 세로·가로 합치기·#N/A·#REF! 해결

여러 표를 같은 열 구조로 아래에 이어 붙일 때는 VSTACK, 서로 다른 열을 옆으로 붙일 때는 HSTACK을 사용합니다. 두 함수 모두 원본 범위를 그대로 둔 채 결과 배열을 자동으로 펼치지만, 열·행 수가 맞지 않는 부분은 #N/A가 되고 출력 범위에 값이 있으면 #REF!가 납니다. 먼저 붙이는 방향과 범위 크기를 확인한 다음, 결과가 펼쳐질 빈 영역에서 수식을 시작하세요.
한눈에 보기
- 여러 표의 행을 아래로 잇기:
=VSTACK(범위1,범위2) - 여러 범위의 열을 오른쪽으로 붙이기:
=HSTACK(범위1,범위2) - VSTACK은 열 수, HSTACK은 행 수가 다르면 부족한 칸에
#N/A표시 - 결과가 펼쳐질 셀에 값이 있으면
#REF!: 기존 값을 확인한 뒤 출력 공간 비우기
VSTACK과 HSTACK 중 무엇을 고를까
행을 추가해 하나의 긴 표를 만들면 VSTACK, 열을 나란히 비교하면 HSTACK이 맞습니다. 두 함수는 값을 한 칸에 합치는 것이 아니라 여러 셀로 된 배열을 그대로 이어 붙입니다.
=VSTACK(범위1, [범위2, ...])=HSTACK(범위1, [범위2, ...])| 목적 | 선택 | 결과 방향 |
|---|---|---|
| 지점별 같은 구조의 판매표 통합 | VSTACK | 첫 표 아래에 다음 표의 행 추가 |
| 상품명 옆에 다른 범위의 값을 배치 | HSTACK | 첫 범위 오른쪽에 다음 범위의 열 추가 |
| 여러 셀을 한 열 목록으로 평탄화 | TOCOL | 행·열 구조를 없애고 한 열로 변환 |
행과 열 구조를 유지할 필요 없이 모든 값을 한 열로 모으려면 TOCOL로 여러 열을 한 열로 바꾸는 방법이 더 적합합니다.
VSTACK으로 두 표를 세로로 합치기

서울 판매표가 A2:C5, 부산 판매표의 데이터 행이 E3:G4에 있다면 아래 수식으로 헤더 한 줄과 데이터 다섯 줄을 하나의 표로 만들 수 있습니다.
=VSTACK(A2:C5,E3:G4)- 첫 범위
A2:C5: 날짜·상품·매출 헤더와 서울 데이터 3줄 - 두 번째 범위
E3:G4: 부산 데이터 2줄만 선택해 중간 헤더 중복 방지 - 결과
I2:K7: 헤더 1줄과 데이터 5줄이 세로로 이어진 6행 배열
두 번째 범위를 E2:G4처럼 헤더부터 선택하면 부산 표의 ‘날짜·상품·매출’도 결과 중간에 한 줄 더 들어갑니다. 여러 표의 제목이 같다면 첫 범위에만 헤더를 포함하고, 이후 범위는 데이터 행부터 선택하세요.
결과 배열은 복사한 고정값이 아닙니다. 원본 매출을 바꾸면 VSTACK 결과의 같은 행도 함께 갱신되므로, 원본 표와 통합 표를 따로 수정하지 않아도 됩니다.
HSTACK으로 범위를 가로로 붙이기
상품 목록처럼 세로로 된 두 범위를 옆으로 비교하려면 HSTACK을 사용합니다. 서울 상품 B3:B5 오른쪽에 부산 상품 F3:F4를 붙이는 수식은 다음과 같습니다.
=HSTACK(B3:B5,F3:F4)첫 범위는 3행, 두 번째 범위는 2행이므로 결과는 더 긴 3행을 기준으로 만들어집니다. 부산 범위에 대응하는 세 번째 행이 없어서 그 칸에는 #N/A가 표시됩니다.
범위 크기가 다를 때 #N/A를 줄이는 방법
VSTACK은 입력 범위의 열 수, HSTACK은 행 수를 먼저 비교합니다. 짧은 쪽에 존재하지 않는 칸은 빈 문자열이 아니라 #N/A로 남기 때문에 범위 모양이 어긋났다는 사실을 확인할 수 있습니다.
| 증상 | 먼저 확인 | 복구 |
|---|---|---|
VSTACK 결과 일부 열에 #N/A | 각 범위의 열 수와 열 순서 | 같은 열 구조로 범위를 다시 선택 |
HSTACK 마지막 행에 #N/A | 각 범위의 행 수와 정렬 순서 | 같은 행 수로 맞추거나 필요한 행만 선택 |
결과에 원본의 #N/A가 그대로 표시 | 입력 범위 안의 오류 셀 | 원본 오류를 먼저 고친 뒤 결합 수식 확인 |
IFERROR로 #N/A를 빈칸으로 가리기 전에 범위 크기와 원본 오류를 먼저 확인하세요. 업무상 빈칸으로 처리해도 되는 경우와 구조 오류를 구분하는 기준은 IFERROR로 오류를 처리할 때 주의할 점에서 이어서 볼 수 있습니다.
#REF!가 나오면 출력 공간을 비우기

VSTACK과 HSTACK은 수식 셀 하나에서 시작해 오른쪽과 아래쪽으로 결과를 펼칩니다. 결과가 차지할 셀 중 하나에 값이 남아 있으면 기존 내용을 덮어쓰지 않고 #REF!를 표시합니다.
M11에 =VSTACK(A2:C5,E3:G4)를 입력했을 때 O11에 ‘기존 메모’가 있으면 “배열 결과는 O11에서 데이터를 덮어쓰기 때문에 스프레드시트에서 펼쳐지지 않습니다”라는 오류가 나타납니다.
#REF!셀을 선택해 오류 설명에 표시된 막힌 셀 주소를 확인합니다.- 표시된 셀의 값이 지워도 되는 내용인지 확인하고, 필요하면 다른 곳에 복사합니다.
- 출력 배열이 차지할 범위의 기존 값을 비웁니다.
- 수식 셀로 돌아와 헤더와 마지막 데이터 행까지 펼쳐졌는지 확인합니다.
원본 구조와 헤더를 점검하는 순서
결합 수식이 동작해도 열의 의미가 섞이면 통합 표를 믿기 어렵습니다. VSTACK은 열 제목과 순서를 자동으로 해석하지 않고 선택한 범위를 위치 그대로 아래에 붙입니다.
- 열 순서 확인: 두 표가 모두 날짜 → 상품 → 매출 순서인지 비교합니다.
- 헤더 한 번만 포함: 첫 범위에는 헤더를 넣고 이후 범위는 데이터부터 선택합니다.
- 범위 크기 확인: VSTACK은 열 수, HSTACK은 행 수가 같은지 먼저 봅니다.
- 출력 공간 확보: 예상 결과의 오른쪽과 아래쪽에 남은 값이 없는지 확인합니다.
- 원본 값 변경 확인: 원본 한 셀을 바꿨을 때 결합 결과의 해당 값도 함께 바뀌는지 봅니다.
결과 배열 안의 한 칸을 따로 고치기보다 원본 범위나 수식의 범위를 수정하세요. 그래야 다음 원본 변경에도 통합 표의 구조가 유지됩니다.
PC·Android·iPhone에서 수식 입력하기
PC에서는 결과를 시작할 빈 셀을 선택하고 등호로 시작하는 수식을 입력한 뒤 Enter를 누릅니다. Android와 iPhone·iPad 앱도 셀을 탭한 뒤 =와 함수명을 직접 입력하고 완료할 수 있습니다.
- PC: 두 입력 범위와 출력 범위를 한 화면에서 비교하며 열·행 수를 확인하기 쉽습니다.
- Android: 셀을 탭하고 수식 입력란에
=VSTACK(...)또는=HSTACK(...)을 입력한 뒤 완료합니다. - iPhone·iPad: 셀을 탭해 수식을 입력하고 체크 표시로 완료합니다.
모바일에서는 출력 범위의 오른쪽과 아래쪽이 화면 밖에 있을 수 있습니다. #REF!가 보이면 오류 설명의 셀 주소로 이동해 기존 값부터 확인하세요.
공식 도움말과 관련 글
- Google Docs 편집기 고객센터 VSTACK 함수
- Google Docs 편집기 고객센터 HSTACK 함수
- Google Docs 편집기 고객센터 Google 스프레드시트의 배열
- Google Docs 편집기 고객센터 Android 수식 입력
- Google Docs 편집기 고객센터 iPhone·iPad 수식 입력
두 표의 헤더 순서를 먼저 맞춘 뒤, 아래로 잇는 작업이면 VSTACK, 옆으로 붙이면 HSTACK을 선택하세요. #N/A는 범위 크기, #REF!는 출력 공간을 먼저 보면 원인을 빠르게 좁힐 수 있습니다.