적용 할 찾기 및 바꾸기 매크로의 텍스트 범위를 선택하십시오.

팀잭

수백 개의 찾기 및 바꾸기 작업을 수행하는 Word 매크로가 있지만 현재는 전체 문서에 작업을 적용합니다. "Abstract"(굵게, 대소 문자 구분)와 "References"(굵게, 대소 문자 구분) 사이의 텍스트에만 적용해야합니다.

현재 코드는 전체 문서에 변경 사항을 적용한 다음 매크로 끝에서 다음 코드를 사용하여 참조에 대한 변경 사항을 소급하여 거부합니다.

With Selection.Find
 .ClearFormatting
 .Font.Bold = True
 .MatchCase = True
 .Forward = True
 .Execute FindText:="References"
  
    If .Found = True Then
         
        Selection.Find.Execute
        Selection.Collapse wdCollapseStart

        Dim r1 As Range
        Set r1 = Selection.Range
        
        Selection.Find.Text = "DummyText"
   
        Selection.WholeStory
        Selection.Collapse wdCollapseEnd
  
        Dim r2 As Range
        Set r2 = ActiveDocument.Range(r1.start, Selection.start)
        r2.Select
    
        If Selection.Range.Revisions.Count >= 1 Then _
        Selection.Range.Revisions.RejectAll
        
    End If

End With

굵게 표시된 "References"와 "DummyText"사이의 텍스트를 선택합니다.이 텍스트는 찾을 수 없다고 보장되는 일부 텍스트 일 ​​뿐이므로 문서의 끝까지 선택한 다음 해당 선택 항목 내의 모든 변경 사항을 거부합니다.

모든 찾기 및 바꾸기 작업이 다음과 같이 Abstract와 References 사이의 선택에만 적용되도록 이것을 조정하고 매크로의 시작 부분에 두려고 시도했습니다.

    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = "Abstract"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .Font.Bold = True
        .MatchCase = True
        .MatchWholeWord = True
    End With
    Selection.Find.Execute
    Selection.Collapse wdCollapseStart

    Dim r1 As Range
    Set r1 = Selection.Range

    Selection.Find.Text = "References"
    Dim r2 As Range
    Set r2 = ActiveDocument.Range(r1.start, Selection.start)
    r2.Select

    ' Move cursor to start, turn on tracked changes
    
    Selection.HomeKey Unit:=wdStory
    ActiveDocument.TrackRevisions = True
    With ActiveWindow.View.RevisionsFilter
        .markup = wdRevisionsMarkupSimple
        .View = wdRevisionsViewFinal
    End With
    
    ' start replacements (these go on for ages, two examples here)
        
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "Also "
        .Replacement.Text = "Additionally, "
        .Forward = True
        .Wrap = wdFindStop
        .Format = False
        .MatchCase = True
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
        With Selection.Find
        .Text = "Therefore "
        .Replacement.Text = "Therefore, "
        .Forward = True
        .Wrap = wdFindStop
        .Format = False
        .MatchCase = True
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll

' and so on...


내가 읽은 다른 스레드는 제안하는 것 같습니다.

.Wrap = wdFindStop

대체 필드에서 내가 원하는 것을 할 수 있지만 작동하지 않습니다.

아무도 도울 수 있습니까? 건배.

거대

예를 들면 :

Sub Demo()
Application.ScreenUpdating = False
Dim Rng As Range
With ActiveDocument.Range
  With .Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = "Abstract"
    .Font.Bold = True
    .Forward = True
    .Wrap = wdFindStop
    .MatchWildcards = True
  End With
  Do While .Find.Execute
    Set Rng = .Duplicate
    With .Duplicate
      .End = ActiveDocument.Range.End
      With .Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Text = "References"
        .Font.Bold = True
        .Forward = True
        .Wrap = wdFindStop
        .MatchWildcards = True
        .Execute
      End With
      If .Find.Found = True Then
        Rng.End = .Duplicate.End
        Rng.Revisions.RejectAll
      End If
    End With
  Loop
End With
Application.ScreenUpdating = True
End Sub

위의 코드는 필요한 경우 여러 'Abstract'및 'References'블록을 수용합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

기능적인 자바 스크립트 및 람다를 사용하여 찾기 및 바꾸기

분류에서Dev

Notepad ++ 찾기 / 바꾸기를 사용하여 '='의 각면에 텍스트를 바꾸어 바꾸기

분류에서Dev

MS Word VBA를 사용하여 폴더의 모든 문서 내에서 텍스트 찾기 및 바꾸기

분류에서Dev

awk를 사용하여 텍스트의 일부만 검색 및 바꾸기

분류에서Dev

셀 텍스트를 참조하고 동적 찾기 및 바꾸기를 만드는 VBA 코드 만들기

분류에서Dev

매크로를 사용하여 텍스트 파일의 단어를 다른 단어로 바꾸기

분류에서Dev

Google 시트 + 앱 스크립트 : showDialog 상자를 사용하여 값 찾기 및 바꾸기

분류에서Dev

배치 스크립트를 사용하여 가변 텍스트의 전체 문자열 줄 바꾸기 찾기

분류에서Dev

URL 링크의 텍스트 색상을 변경하려면 문자열 바꾸기를 사용하십시오.

분류에서Dev

전체 단어 만 사용하여 텍스트 파일에서 찾기 및 바꾸기위한 배치 파일?

분류에서Dev

html 태그를 무시하고 따옴표 안의 텍스트 찾기 및 바꾸기

분류에서Dev

OpenXML 및 Regex를 사용하는 Word Docx에서 아포스트로피 ( ') 찾기 및 바꾸기 문제

분류에서Dev

Excel VBA 루프를 사용하여 문자열에서 텍스트 찾기 및 바꾸기

분류에서Dev

Repl.bat를 사용하여 파일 목록에서 텍스트 찾기 및 바꾸기

분류에서Dev

Win32COM을 사용하여 헤더 내의 텍스트 찾기 및 바꾸기

분류에서Dev

소프트 하이픈을 포함 할 수있는 텍스트를 찾기위한 XPath 텍스트 / 바꾸기

분류에서Dev

Bash 스크립트를 사용하여 텍스트 파일에서 특수 문자 찾기 / 바꾸기

분류에서Dev

다른 시트에서 동적 범위의 텍스트 찾기

분류에서Dev

바꾸기 문자열에서 찾은 문자열의 일부를 사용하여 찾기 및 바꾸기

분류에서Dev

selected 및 angularJS를 사용하여 기본적으로 옵션을 선택하십시오.

분류에서Dev

MS Word 찾기 및 바꾸기를 사용하여 두 개의 다양한 텍스트 블록의 여러 사례를 교체

분류에서Dev

Perl 스크립트에서 텍스트 찾기 및 바꾸기

분류에서Dev

MS Word 2010-선택한 텍스트를 사용하는 바꾸기의 바로 가기 키

분류에서Dev

두 개의 변수를 시작 및 끝 매개 변수로 사용하여 텍스트 파일에서 범위 가져 오기

분류에서Dev

Excel에서 매크로를 사용하여 루프에서 찾기 및 바꾸기

분류에서Dev

jQuery replaceWith ()를 사용하여 선택한 텍스트를 입력 텍스트로 바꾸기

분류에서Dev

LibreOffice 용 Python 매크로-텍스트의 문자열 바꾸기

분류에서Dev

Notepad ++를 사용하여 텍스트의 일부만 바꾸기

분류에서Dev

Java를 사용하여 파일의 텍스트 바꾸기

Related 관련 기사

  1. 1

    기능적인 자바 스크립트 및 람다를 사용하여 찾기 및 바꾸기

  2. 2

    Notepad ++ 찾기 / 바꾸기를 사용하여 '='의 각면에 텍스트를 바꾸어 바꾸기

  3. 3

    MS Word VBA를 사용하여 폴더의 모든 문서 내에서 텍스트 찾기 및 바꾸기

  4. 4

    awk를 사용하여 텍스트의 일부만 검색 및 바꾸기

  5. 5

    셀 텍스트를 참조하고 동적 찾기 및 바꾸기를 만드는 VBA 코드 만들기

  6. 6

    매크로를 사용하여 텍스트 파일의 단어를 다른 단어로 바꾸기

  7. 7

    Google 시트 + 앱 스크립트 : showDialog 상자를 사용하여 값 찾기 및 바꾸기

  8. 8

    배치 스크립트를 사용하여 가변 텍스트의 전체 문자열 줄 바꾸기 찾기

  9. 9

    URL 링크의 텍스트 색상을 변경하려면 문자열 바꾸기를 사용하십시오.

  10. 10

    전체 단어 만 사용하여 텍스트 파일에서 찾기 및 바꾸기위한 배치 파일?

  11. 11

    html 태그를 무시하고 따옴표 안의 텍스트 찾기 및 바꾸기

  12. 12

    OpenXML 및 Regex를 사용하는 Word Docx에서 아포스트로피 ( ') 찾기 및 바꾸기 문제

  13. 13

    Excel VBA 루프를 사용하여 문자열에서 텍스트 찾기 및 바꾸기

  14. 14

    Repl.bat를 사용하여 파일 목록에서 텍스트 찾기 및 바꾸기

  15. 15

    Win32COM을 사용하여 헤더 내의 텍스트 찾기 및 바꾸기

  16. 16

    소프트 하이픈을 포함 할 수있는 텍스트를 찾기위한 XPath 텍스트 / 바꾸기

  17. 17

    Bash 스크립트를 사용하여 텍스트 파일에서 특수 문자 찾기 / 바꾸기

  18. 18

    다른 시트에서 동적 범위의 텍스트 찾기

  19. 19

    바꾸기 문자열에서 찾은 문자열의 일부를 사용하여 찾기 및 바꾸기

  20. 20

    selected 및 angularJS를 사용하여 기본적으로 옵션을 선택하십시오.

  21. 21

    MS Word 찾기 및 바꾸기를 사용하여 두 개의 다양한 텍스트 블록의 여러 사례를 교체

  22. 22

    Perl 스크립트에서 텍스트 찾기 및 바꾸기

  23. 23

    MS Word 2010-선택한 텍스트를 사용하는 바꾸기의 바로 가기 키

  24. 24

    두 개의 변수를 시작 및 끝 매개 변수로 사용하여 텍스트 파일에서 범위 가져 오기

  25. 25

    Excel에서 매크로를 사용하여 루프에서 찾기 및 바꾸기

  26. 26

    jQuery replaceWith ()를 사용하여 선택한 텍스트를 입력 텍스트로 바꾸기

  27. 27

    LibreOffice 용 Python 매크로-텍스트의 문자열 바꾸기

  28. 28

    Notepad ++를 사용하여 텍스트의 일부만 바꾸기

  29. 29

    Java를 사용하여 파일의 텍스트 바꾸기

뜨겁다태그

보관