
Excel 워크시트에 여러 섹션, 긴 표 또는 많은 행의 데이터가 포함되어 있으면, Excel이 의도치 않은 위치에서 자동으로 콘텐츠를 페이지별로 나눌 수 있습니다. 제목이 페이지 하단에 나타나거나, 표가 중간에 잘리거나, 관련 열이 서로 다른 페이지로 분리될 수 있습니다. 페이지 나누기를 추가하면 인쇄된 페이지가 시작되는 위치를 제어하여 보고서를 더 읽기 쉽게 만들 수 있습니다.
이 문서에서는 Excel에서 페이지 나누기를 삽입하는 3가지 실용적인 방법을 다룹니다.
- Excel에서 수동으로 페이지 나누기 추가 또는 이동
- VBA를 사용하여 N행마다 페이지 나누기 삽입
- C#으로 여러 Excel 파일에 페이지 나누기 추가
Excel의 페이지 나누기란 무엇인가?
페이지 나누기는 인쇄된 한 페이지가 끝나고 다음 페이지가 시작되는 지점을 표시합니다.
페이지 나누기는 인쇄 레이아웃에만 영향을 미칩니다. 셀을 이동하거나, 수식을 변경하거나, 워크시트를 별도의 시트로 분할하거나, 기본 데이터를 수정하지 않습니다.
Excel은 두 가지 종류의 페이지 나누기를 사용합니다.
- 자동 페이지 나누기: 용지 크기, 여백, 배율, 행 높이 및 열 너비를 기준으로 Excel이 생성합니다.
- 수동 페이지 나누기: 사용자가 인쇄된 페이지가 시작되는 위치를 제어하기 위해 삽입합니다.
사용자는 두 가지 유형의 수동 페이지 나누기를 삽입할 수 있습니다.
- 가로 페이지 나누기: 특정 행에서 새로운 인쇄 페이지를 시작합니다.
- 세로 페이지 나누기: 특정 열에서 새로운 인쇄 페이지를 시작합니다.
시작하기 전에 페이지 나누기 미리 보기 열기
페이지 나누기 미리 보기는 현재 Excel이 워크시트를 인쇄된 페이지로 어떻게 나누고 있는지 보여줍니다. 페이지 나누기를 삽입하기 전에 이 보기를 열 필요는 없지만, 페이지 경계를 더 쉽게 확인하고 결과를 검토하는 데 도움이 됩니다.
페이지 나누기 미리 보기를 여는 방법:
-
Excel 리본 메뉴에서 보기 탭으로 이동합니다.
-
페이지 나누기 미리 보기를 선택합니다.

Excel이 워크시트에 페이지 경계를 직접 표시합니다.
팁: 점선은 Excel에서 생성한 자동 페이지 나누기를 나타냅니다. 실선은 수동 페이지 나누기를 나타내며, 사용자가 수동으로 이동한 자동 페이지 나누기도 포함됩니다.
Excel에서 수동으로 페이지 나누기 추가 또는 이동하기
대상: 단일 워크시트의 인쇄 레이아웃을 조정하거나 수동으로 몇 개의 페이지 나누기만 삽입하려는 사용자.
가로 페이지 나누기 삽입
- 페이지가 나뉘기를 원하는 행 바로 아래의 행을 선택합니다(예: 9행과 10행 사이에 나누기를 삽입하려면 10행 번호를 클릭).
- 페이지 레이아웃 탭으로 이동합니다.
- 나누기를 클릭합니다.
- 페이지 나누기 삽입을 선택합니다.
결과: Excel이 선택한 행 위에 가로 페이지 나누기를 삽입합니다.
세로 페이지 나누기 삽입
- 나누기를 원하는 열 바로 오른쪽의 열을 선택합니다(예: C열과 D열 사이에 나누기를 삽입하려면 D열을 클릭).
- 페이지 레이아웃 탭으로 이동합니다.
- 나누기를 클릭합니다.
- 페이지 나누기 삽입을 선택합니다.
결과: Excel이 선택한 열 왼쪽에 페이지 나누기를 삽입합니다.
기존 페이지 나누기 이동
페이지 나누기를 삭제하고 다시 만들지 않고도 이동할 수 있습니다.
- 페이지 나누기 미리 보기 상태인지 확인합니다.
- 페이지 나누기 선을 원하는 위치로 드래그합니다. 선을 드래그할 수 없는 경우, Excel 옵션에서 '셀 끌어서 놓기'가 활성화되어 있는지 확인하십시오. 자동 페이지 나누기를 이동하면 수동 페이지 나누기로 변경됩니다.
참고: 넓은 워크시트의 경우 페이지 방향, 여백 및 배율 설정이 최종 인쇄 레이아웃에 영향을 줄 수 있습니다. 열이 예상대로 나타나지 않으면 인쇄 미리 보기를 검토하십시오.
장점 및 제한 사항
| 장점 | 제한 사항 |
|---|---|
| 작은 조정에 빠르고 쉬움 | 각 나누기마다 수동 반복 작업 필요 |
VBA를 사용하여 N행마다 자동으로 페이지 나누기 삽입하기
대상: 10행마다와 같이 일정한 행 간격으로 페이지 나누기를 삽입해야 하는 Excel 데스크톱 앱 사용자.
Excel은 N행마다 페이지 나누기를 삽입하는 간단한 기본 버튼을 제공하지 않습니다. 페이지 나누기가 몇 개만 필요하다면 수동 삽입으로 충분합니다.
그러나 워크시트에 수백 또는 수천 개의 행이 포함된 경우, 하나씩 페이지 나누기를 추가하는 것은 시간이 많이 걸리고 오류가 발생하기 쉽습니다. 간단한 VBA 매크로를 사용하면 이 과정을 자동화하고 동일한 페이지 나누기 규칙을 일관되게 적용할 수 있습니다.
⚠️ 경고: VBA 매크로로 변경한 내용은 일반적으로 Ctrl + Z로 되돌릴 수 없습니다. 코드를 실행하기 전에 통합 문서의 백업 복사본을 저장하고, 신뢰할 수 있는 출처의 매크로만 실행하십시오!
단계별 가이드
-
Alt + F11을 눌러 VBA 편집기를 엽니다.
-
삽입 > 모듈을 클릭하여 새 모듈을 만듭니다.
-
다음 VBA 코드를 모듈에 붙여넣습니다:
Sub InsertPageBreaksEveryNRows() Dim ws As Worksheet Dim intervalRows As Long Dim lastRow As Long Dim rowIndex As Long Set ws = ActiveSheet intervalRows = 10 ' 원하는 간격으로 이 값을 변경하세요 lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row For rowIndex = intervalRows + 1 To lastRow Step intervalRows If Not HasHorizontalPageBreak(ws, rowIndex) Then ws.HPageBreaks.Add Before:=ws.Rows(rowIndex) End If Next rowIndex End Sub Private Function HasHorizontalPageBreak(ws As Worksheet, breakRow As Long) As Boolean Dim pb As HPageBreak HasHorizontalPageBreak = False For Each pb In ws.HPageBreaks If pb.Location.Row = breakRow Then HasHorizontalPageBreak = True Exit Function End If Next pb End Function
-
intervalRows = 10을 페이지 나누기 사이에 원하는 워크시트 행 수로 변경합니다. -
F5를 눌러 매크로를 실행합니다.
중요 팁:
- 이 매크로는 A열에 데이터가 있다고 가정하고 마지막 행을 결정합니다. 데이터가 다른 열에서 시작되면 "A"를 해당 열 문자로 변경하십시오.
- 이 매크로는 기존 페이지 나누기를 제거하지 않습니다. 새로운 나누기를 삽입하기 전에 모든 나누기를 초기화하려면 매크로 시작 부분에
ActiveSheet.ResetAllPageBreaks를 추가하십시오. - Excel은 한 워크시트에 최대 1,026개의 가로 및 세로 페이지 나누기를 허용합니다. 매우 큰 워크시트에서 간격이 너무 작으면 이 제한을 초과할 수 있습니다.
- 매크로를 통합 문서에 유지하려면 파일을 Excel 매크로 사용 통합 문서(.xlsm)로 저장하십시오.
장점 및 제한 사항
| 장점 | 제한 사항 |
|---|---|
| 반복적인 페이지 나누기 삽입 자동화 | VBA 지식 필요 |
| 사용자 지정 행 간격 지원 | Excel 데스크톱 앱에서만 작동 |
기존 페이지 나누기를 제거해야 하나요? Excel에서 페이지 나누기 제거하는 방법을 참조하십시오.
C#으로 여러 Excel 파일에 페이지 나누기 추가하기
대상: 여러 Excel 파일에 페이지 나누기를 일괄 삽입하거나, Microsoft Excel GUI와 상호 작용하지 않고 엔터프라이즈 소프트웨어 내에서 Excel 보고서 생성을 자동화해야 하는 개발자 또는 고급 사용자.
VBA는 데스크톱 자동화에 뛰어나지만, 기업 자동화 워크플로는 종종 서버 측에서 Excel 문서를 처리해야 합니다. .NET 생태계에서 개발자는 Free Spire.XLS for .NET과 같은 라이브러리를 활용하여 Excel을 열지 않고도 C#에서 가로 또는 세로 페이지 나누기를 삽입할 수 있습니다.
아래 단계에 따라 C# 및 Free Spire.XLS for .NET을 사용하여 여러 Excel 통합 문서에 페이지 나누기를 추가하십시오.
단계
-
필요한 라이브러리를 설치합니다.
NuGet 패키지 관리자를 통해 라이브러리를 설치합니다:
Install-Package FreeSpire.XLS -
페이지 나누기를 일괄 삽입하는 C# 코드를 추가합니다.
다음 예제는 여러 Excel 파일을 반복하고, 가로 및 세로 페이지 나누기를 삽입한 다음, 처리된 통합 문서를 저장합니다.
using System; using System.IO; using Spire.Xls; namespace ExcelPageBreak { internal class Program { private static void Main() { // 처리할 Excel 파일이 포함된 폴더 string inputFolder = @"C:\ExcelFiles"; // 처리된 파일을 별도의 하위 폴더에 저장 string outputFolder = Path.Combine(inputFolder, "Processed"); Directory.CreateDirectory(outputFolder); // 입력 폴더에서 모든 .xlsx 파일 찾기 string[] files = Directory.GetFiles( inputFolder, "*.xlsx", SearchOption.TopDirectoryOnly ); foreach (string filePath in files) { using (Workbook workbook = new Workbook()) { // Excel 파일 로드 workbook.LoadFromFile(filePath); // 첫 번째 워크시트 가져오기 Worksheet sheet = workbook.Worksheets[0]; // 10행 위에 가로 페이지 나누기 삽입 sheet.HPageBreaks.Add(sheet.Range["A10"]); // D열 앞에 세로 페이지 나누기 삽입 sheet.VPageBreaks.Add(sheet.Range["D1"]); // 출력 파일 경로 작성 string outputPath = Path.Combine( outputFolder, Path.GetFileName(filePath) ); // 처리된 통합 문서 저장 workbook.SaveToFile( outputPath, FileFormat.Version2016 ); } } Console.WriteLine( $"{files.Length}개의 통합 문서가 처리되었습니다. " + $"파일 저장 위치: {outputFolder}" ); } } }
코드 작동 방식:
이 코드는 Directory.GetFiles()를 사용하여 지정된 입력 폴더에서 모든 .xlsx 파일을 찾습니다. 각 통합 문서에 대해 다음을 수행합니다:
- 파일을 열고 첫 번째 워크시트를 선택합니다.
- 10행 위에 가로 페이지 나누기를 추가합니다.
- D열 앞에 세로 페이지 나누기를 추가합니다.
- 업데이트된 통합 문서를 별도의
Processed폴더에 저장합니다.
C:\ExcelFiles를 통합 문서가 포함된 폴더로 변경하십시오. 또한 A10 및 D1을 각 새 인쇄 페이지가 시작되기를 원하는 행과 열로 바꿀 수 있습니다.
참고:
- 이 예제는 선택한 폴더의 파일만 처리합니다. 하위 폴더의 파일을 포함하려면
SearchOption.TopDirectoryOnly를SearchOption.AllDirectories로 변경하십시오. - Free Spire.XLS는 .xls 파일의 경우 통합 문서당 5개 워크시트, 워크시트당 200행으로 제한합니다. 이러한 제한은 .xlsx 파일에는 적용되지 않으므로 위의 예제는 .xlsx 파일만 처리합니다. 더 큰 .xls 통합 문서의 경우 .xlsx로 변환한 후 처리하십시오.
장점 및 제한 사항
| 장점 | 제한 사항 |
|---|---|
| 여러 Excel 파일에 대한 페이지 나누기 삽입 자동화 | .NET 프로그래밍 지식 필요 |
| Microsoft Excel 설치 불필요 | 간단한 수동 조정에는 부적합 |
모든 페이지 나누기 삽입 방법 빠르게 비교하기
| 방법 | 최적의 사용 사례 | 크로스 플랫폼 지원? | 일괄 처리? |
|---|---|---|---|
| 수동 삽입 | 일회성, 작은 데이터 세트 | 제한적 (데스크톱 전용) | 아니요 |
| VBA 매크로 | 반복 또는 간격 기반 규칙 | 제한적 (데스크톱 전용) | 제한적 |
| C# + Free Spire.XLS | 일괄 처리 및 자동화된 워크플로 | 예 (크로스 플랫폼 .NET) | 예 |
Excel에서 페이지 나누기가 작동하지 않는 이유
페이지 나누기가 예상한 위치에 나타나지 않으면 다음 설정을 확인하십시오:
-
잘못된 행이나 열이 선택되었습니다.
Excel은 선택한 행 위에 가로 페이지 나누기를, 선택한 열 왼쪽에 세로 페이지 나누기를 삽입합니다. 다음 인쇄 페이지가 시작되어야 하는 행이나 열을 선택하십시오. -
현재 보기에서 페이지 나누기가 보이지 않습니다.
보기 > 페이지 나누기 미리 보기를 열어 워크시트에 자동 및 수동 페이지 나누기를 직접 표시하십시오. -
'자동 맞춤' 배율이 수동 페이지 나누기를 무시하고 있습니다.
워크시트가 자동 맞춤 배율 옵션을 사용하는 경우, Excel이 수동 페이지 나누기를 무시할 수 있습니다. 페이지 설정 대화 상자를 열고 확대/축소 배율을 대신 선택하십시오. -
인쇄 영역에 예상한 콘텐츠가 포함되어 있지 않습니다.
페이지 레이아웃 > 인쇄 영역을 확인하고 올바른 범위가 포함되어 있는지 확인하십시오. 기존 인쇄 영역을 지우고 다시 설정할 수도 있습니다. -
워크시트가 보호되어 있습니다.
보호된 워크시트는 페이지 레이아웃 설정 변경을 방지할 수 있습니다. 시트 보호를 해제하고 페이지 나누기를 삽입하거나 이동한 다음, 필요한 경우 다시 보호하십시오.
변경 후 파일 > 인쇄를 열어 워크시트를 인쇄하거나 내보내기 전에 최종 페이지 레이아웃을 확인하십시오.
자주 묻는 질문(FAQ)
Q1: Excel에서 페이지 나누기를 삽입하는 단축키가 있나요?
A1: Excel에는 페이지 나누기를 삽입하는 범용 단축키가 없습니다. Windows 버전에서는 Alt → P → B → I를 사용하여 '페이지 나누기 삽입' 명령에 액세스할 수 있습니다. 키 시퀀스는 Excel 버전 및 표시 언어에 따라 다를 수 있습니다.
Q2: N행마다 페이지 나누기를 삽입할 수 있나요?
A2: 네. Excel은 고정된 행 간격으로 페이지 나누기를 삽입하는 기본 옵션을 제공하지 않습니다. 하나씩 수동으로 추가하거나 VBA를 사용하여 과정을 자동화할 수 있습니다.
Q3: Excel에서 페이지 나누기를 제거하려면 어떻게 하나요?
A3: 가로 나누기 아래의 행이나 세로 나누기 오른쪽의 열을 선택한 다음, 페이지 레이아웃 > 나누기 > 페이지 나누기 제거로 이동합니다. 모든 수동 페이지 나누기를 제거하려면 모든 페이지 나누기 원래대로를 선택합니다. 자동 페이지 나누기는 직접 제거할 수 없습니다.
Q4: 페이지 나누기가 워크시트 데이터에 영향을 주나요?
A4: 아니요. 페이지 나누기는 인쇄되거나 PDF로 내보낼 때 워크시트가 어떻게 나뉘는지 제어할 뿐입니다. 셀 값, 수식, 서식 또는 워크시트 구조를 변경하지 않습니다.
요약
이 문서에서는 Excel에서 페이지 나누기를 삽입하는 세 가지 실용적인 방법과 일반적인 인쇄 레이아웃 문제를 방지하기 위한 유용한 팁을 논의했습니다. 작업에 가장 적합한 방법을 선택하고, 워크시트를 인쇄하거나 PDF로 내보내기 전에 인쇄 미리 보기에서 최종 결과를 검토하십시오.