본문 바로가기
■ 칼퇴를 위한 VBA : 사례/- VBA for 워드

워드 VBA 코드를 사용한 페이지 번호 자동화

by 포탈메이커 2023. 7. 5.

워드 VBA 코드를 사용한 페이지 번호 자동화

들어가기

워드 문서에서 페이지 번호를 일일히 입력하는 것은 번거로운 작업입니다. 다행히도, VBA(Visual Basic for Applications) 코드를 사용하여 페이지 번호를 자동으로 삽입할 수 있습니다. 이 글에서는 워드 VBA 코드를 사용하여 페이지 번호를 자동화하는 방법을 알아보겠습니다.

VBA 코드 작성

우선, 페이지 번호를 자동으로 삽입하는 VBA 코드를 작성해야 합니다. 아래의 코드를 워드의 VBA 에디터에서 작성해주세요.

Sub InsertPageNumbers()
    Dim i As Integer
    Dim n As Integer
    Dim oSection As Section
    Dim oPageNumbers As PageNumbers

    ' 문서의 모든 섹션에 대해 반복
    For Each oSection In ActiveDocument.Sections
        ' 섹션의 PageNumbers 개체 가져오기
        Set oPageNumbers = oSection.Headers(wdHeaderFooterPrimary).PageNumbers
        
        ' 첫 번째 섹션은 커버 페이지이므로 페이지 번호를 삽입하지 않음
        If oSection.Index <> 1 Then
            ' 첫 번째 페이지 번호는 섹션 번호와 동일하며, 한눈에 알 수 있도록 굵은 글꼴로 표시
            oPageNumbers.Add PageNumberAlignment:=wdAlignPageNumberCenter, _
                FirstPage:=wdPageNumberStyleArabic, _
                HeadingLevel:=wdHeadingLevel1, _
                Bold:=True
        End If
        
        ' 마지막 페이지 번호 출력 옵션 설정
        oPageNumbers.NumberStyle = wdPageNumberStyleArabic
        oPageNumbers.HeadingLevelForLastPageNumber = wdHeadingLevel1
        oPageNumbers.RestartNumberingAtSection = False
    Next oSection
End Sub

VBA 코드 실행

VBA 코드를 작성한 후, 코드를 실행하여 페이지 번호를 자동으로 삽입해봅시다. 아래와 같은 방법으로 실행할 수 있습니다.

  1. 워드에서 Alt + F11을 눌러 VBA 에디터를 엽니다.
  2. VBA 에디터에서 InsertPageNumbers 마크다운