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

워드 문서에서 특정 텍스트 분할 자동화를 위한 VBA 코드

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

워드 문서에서 특정 텍스트 분할 자동화를 위한 VBA 코드

서론

워드 문서는 많은 사람들이 일상적으로 사용하는 오피스 프로그램 중 하나이다. 워드 문서를 효율적으로 활용하기 위해서는 VBA(Visual Basic for Applications) 코드를 사용하여 특정 작업을 자동화할 수 있다. 이번 포스팅에서는 워드 문서에서 특정 텍스트를 분할하는 자동화 작업을 위해 필요한 VBA 코드에 대해 소개하고자 한다.

VBA 코드 작성하기

  1. 먼저 VBA 코드를 작성하기 위해서는 워드 문서를 열고 ALT+F11을 눌러 VBA 편집기를 실행한다.
  2. VBA 편집기에서 Insert를 클릭하고 Module을 선택하여 새 모듈을 생성한다.
  3. 생성된 모듈 안에 아래의 코드를 작성한다.
Sub SplitTextByDelimiter()
    Dim targetText As String
    Dim delimiter As String
    Dim splitText() As String
    Dim i As Integer

    targetText = ActiveDocument.Range.Text
    delimiter = " " ' Specify the delimiter to split the text, here it's set to space
    splitText = Split(targetText, delimiter)
    
    For i = 0 To UBound(splitText)
        MsgBox splitText(i) ' Output each word after splitting the text, you can modify this part as needed
    Next i
End Sub

위의 코드는 워드 문서의 텍스트를 분할하여 각 단어를 출력하는 기능을 수행한다. 구문을 분석하면 다음과 같다. - targetText 변수: 워드 문서의 텍스트를 저장하는 변수이다. - delimiter 변수: 텍스트를 분할할 구분자를 지정하는 변수이다. 기본적으로는 띄어쓰기로 지정되어 있다. - splitText() 배열: Split 함수를 사용하여 targetTextdelimiter를 기준으로 분할한 결과를 저장하는 배열이다. - For문: splitText 배열의 요소를 하나씩 순회하며 각 단어를 출력하는 반복문이다.

VBA 코드 실행하기

  1. VBA 편집기를 닫고 워드 문서로 돌아간다.
  2. 워드 문서에서 텍스트를 분할하고 싶은 부분을 선택한다.
  3. ALT+F8을 눌러 매크로 다이얼로그를 연다.
  4. SplitTextByDelimiter를 선택하고 실행한다.
  5. 선택한 텍스트가 분할되어 각 단어가 순서대로 출력되는 것을 확인할 수 있다.

마치며

이렇게 작성한 VBA 코드를 사용하면 워드 문서에서 특정 텍스트를 분할하여 처리할 수 있는 효율적인 자동화 작업을 수행할 수 있다. 이러한 VBA 코드 작성은 워드 문서 외에도 엑셀 및 파워포인트 등 오피스 프로그램의 다양한 작업에 응용될 수 있으니, VBA에 익숙해지는 것은 큰 도움이 될 것이다.