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

워드 VBA 코드를 활용한 문서 인덴트 설정 자동화

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

워드 VBA 코드를 활용한 문서 인덴트 설정 자동화

많은 사람들이 워드 문서를 작성할 때 문단을 정리하고 가독성을 높이기 위해 인덴트(들여쓰기) 설정을 사용합니다. 하지만 수작업으로 많은 문단에 인덴트를 적용하는 번거로움이 있습니다. 이런 경우 워드의 VBA(Visual Basic for Applications) 코드를 활용하여 자동화된 인덴트 설정을 만들 수 있습니다.

VBA 기본 개념 이해하기

VBA는 마이크로소프트 오피스 제품군에 내장되어 있는 프로그래밍 언어입니다. VBA를 사용하면 워드, 엑셀, 파워포인트 등 오피스 애플리케이션의 기능을 확장하고 자동화할 수 있습니다.

VBA 코드는 기본적으로 Sub와 Function으로 구성되어 있습니다. Sub는 어떤 작업을 수행하는 코드 블록이고, Function은 값을 반환하는 코드 블록입니다. 우리는 Sub를 활용하여 인덴트 설정 자동화 코드를 작성할 것입니다.

워드 문서의 인덴트 설정 자동화하기

먼저, VBA 코드를 사용하기 위해 워드 문서에서 개발 도구 탭을 활성화해야 합니다. 개발 도구 탭을 활성화하려면 워드의 옵션 설정에서 개발자 도구에 체크를 하면 됩니다.

이제 개발 도구 탭에 있는 Visual Basic 편집기를 실행합니다. Visual Basic 편집기에서 새로운 모듈을 추가하고, 해당 모듈에 아래의 VBA 코드를 입력합니다.

Sub AutoIndent()
    Dim para As Paragraph

    For Each para In ActiveDocument.Paragraphs
        para.LeftIndent = InchesToPoints(0.5)
        para.FirstLineIndent = InchesToPoints(-0.25)
    Next para
End Sub

위의 코드는 문서의 모든 문단에 인덴트를 적용하는 코드입니다. 코드를 간단히 설명하자면, 모든 문단(para)에 대해서 왼쪽 인덴트와 첫 번째 줄 인덴트를 설정하는 것입니다.

인덴트를 조정하는 값을 원하는대로 수정할 수 있으며, InchesToPoints 함수를 사용하여 인치 단위를 포인트 단위로 변환해줍니다. 원하면 코드를 수정하여 다양한 인덴트 스타일을 적용할 수 있습니다.

VBA 코드 작성이 끝나면 편집기를 닫고, 개발 도구 탭에서 Macros를 클릭합니다. 그리고 나서 AutoIndent() 함수를 선택하고 실행 버튼을 누릅니다. 이렇게 하면 문서의 모든 문단에 인덴트가 적용됩니다.

마무리

위에서 소개한 VBA 코드를 사용하면 워드 문서의 인덴트 설정을 자동화할 수 있습니다. VBA를 통해 문서 작성 시간을 절약하고 일관된 문서 스타일을 유지할 수 있으므로, 워드 사용자라면 VBA 코드를 익히고 활용하는 것을 추천합니다.

만약 VBA 코드 작성이 낯설다면, 온라인 자료나 책을 참고하여 학습할 수 있습니다. VBA는 강력한 도구이며 다양한 기능을 자동화할 수 있으므로, 시간과 노력을 절약하기 위해 익히는 것이 좋습니다.