Lisa는 문서의 모든 단락에서 마지막 두 단어를 찾고 그 단어 사이의 공백을 구분되지 않는 공백으로 바꾸는 방법이 필요합니다. 그녀는 찾기 및 바꾸기를 사용하여 이것이 가능한지 궁금합니다.

매크로를 사용하지 않고이 작업을 수행하는 가장 쉬운 방법은 찾기 및 바꾸기의 와일드 카드 기능에 의존하는 것입니다. 이 작업의 핵심은 찾은 내용에서 마지막 두 단어를 식별 할 필요가 없다는 점을 기억하는 것입니다. 앞의 공백이있는 마지막 단어 만 식별하면됩니다. 다음 단계를 따르십시오.

  1. Ctrl + H를 누릅니다. Word는 찾기 및 바꾸기 대화 상자의 바꾸기 탭을 표시합니다.

  2. 자세히 버튼이 보이면 클릭합니다. (그림 1 참조)

  3. 와일드 카드 사용 확인란을 선택합니다.

  4. 찾을 내용 상자에 () ([0-9A-Za-z ~-] \ {1,}) ([. \! \? \ :]) (^ 13)을 입력합니다. 바꿀 내용 상자에 ^ s \ 2 \ 3 \ 4를 입력합니다. 모두 바꾸기를 클릭합니다.

이것이 실제로 어떻게 작동하는지 약간의 설명이 필요할 수 있습니다. 여기서 트릭은 4 단계에서 지정한 검색 대상입니다. 검색되는 각 요소는 (괄호)로 둘러싸여 있으므로 쉽게 선택하고 바꿀 내용 상자 (5 단계)에서 참조 할 수 있습니다. 찾을 내용 상자의 네 가지 요소 (다시 괄호로 묶임)는 다음과 같습니다.

  1. ()

  2. ([0-9A-Za-z ~-] \ {1,})

  3. ([. \! \? \ :])

  4. (^ 13)

첫 번째 요소는 단일 공간입니다. 두 번째는 임의의 숫자, 문자 또는 대시입니다. (숫자, 문자 또는 대시가 여러 개있을 수 있음을 지정하는이 요소의 마지막 부분 (\ {1,})입니다.) 이것은 단락 끝의 단어를 지정하는 요소이며 다음을 포함합니다. 단어가 대시를 포함하여 복합어가 단일 단어로 취급 될 가능성. 세 번째 요소는 표시된 문장 부호 중 하나이고 네 번째 요소는 실제 단락 끝 마커입니다.

바꿀 내용 사양 (5 단계)은 첫 번째 요소 (공백)를 비 분리 공백으로 바꾼 다음 두 번째, 세 번째 및 네 번째 요소를 제자리에 다시 넣습니다.

이 찾기 및 바꾸기 방법이 작동하지 않는 몇 가지 시나리오가 있습니다. 첫째, 문장 부호와 단락 끝 표시 자 사이에 단락 후행 공백이 있으면 작동하지 않습니다. 위의 찾기 및 바꾸기를 수행하기 전에 찾기 및 바꾸기를 사용하여 문서 전체에서 이러한 항목을 제거 할 수 있습니다.

작동하지 않는 두 번째 상황은 마침표 뒤에 따옴표가 있거나 따옴표 뒤에 콜론이 오는 것과 같이 단락이 복합 구두점으로 끝나는 경우입니다. 와일드 카드 검색에서는 단락 끝에 단일 문장 부호 만있을 것으로 예상하며 지정된 4 개의 문장 부호 중 하나 여야합니다.

작동하지 않는 세 번째 상황은 단락의 마지막 단어에 일종의 구두점이있는 경우입니다. 예를 들어, 최종 단어가 실제로 1,234와 같은 숫자 인 경우 쉼표를 포함하면 일치가 발생하지 않습니다. 이 문제는 검색되는 두 번째 요소에 쉼표를 포함하여 처리 할 수 ​​있지만, 이러한 일이 발생할 수있는 횟수는 위의 단계에서 허용하지 않을만큼 너무 적어 보였습니다.

대체에 대한 매크로 기반 접근 방식을 선호하는 경우 다음 매크로 사용을 고려할 수 있습니다.

Sub LastTwo()

Dim p As Paragraph     Dim J As Integer     Dim K As Integer     Dim sTemp As String

For Each p In ActiveDocument.Paragraphs         J = p.Range.Words.Count         For K = J To 1 Step -1             sTemp = p.Range.Words(K)

If Right(sTemp, 1) = " " Then                 p.Range.Words(K) = RTrim(sTemp) & Chr(160)

K = 1             End If         Next K     Next p End Sub

매크로는 문서의 각 단락을 단계별로 실행 한 다음 단락의 단어를 뒤로 이동합니다. 후행 공백이 포함 된 첫 번째 단어를 찾은 다음 해당 공백을 비 분리 공백으로 바꿉니다.

이 매크로에는 한 가지 흥미로운 점이 있습니다. 모든 시스템에서 예상대로 작동하지 않을 수 있습니다. 실행 한 후 비 분리 공백이 나타나지 않고 대신 마지막 두 단어 사이에 작은 “십자”가 표시되면 코드에서 Chr (160)을 Chr (202)로 바꾸십시오. Word에 구분되지 않는 공백에 대해 정의 된 열거가 포함되어 있으면 훨씬 더 쉬울 수 있지만 그렇지 않습니다. 대신, 모든 시스템에서 동일하게 보이지 않는 공백이없는 ASCII 코드에 의존해야합니다.

_ 참고 : _

이 페이지 (또는 WordTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.

link : / wordribbon-WordTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요].

_WordTips_는 비용 효율적인 Microsoft Word 교육을위한 소스입니다.

(Microsoft Word는 세계에서 가장 인기있는 워드 프로세싱 소프트웨어입니다.)이 팁 (13577)은 Microsoft Word 2007, 2010, 2013, 2016, 2019 및 Office 365의 Word에 적용됩니다.