어 VBA-찾기 텍스트 문자열을 하나 말씀(하지 않는 모든 단어는 문자열)는 특정한 스타일이나 형식

0

질문

나가려고 일부를 구성하는 코드를 검색에 대한 텍스트는 하나의 단어를 텍스트 내에서 특정한 형식이나 스타일이다. 예를 들어,내가 찾고 싶은 텍스트에 대한"안녕하세요,세상에 모든 좋은"하지만 히트 인스턴스는 단어를"모든"은 굵게 표시되어 있습니다.

에 대한 나의 생각을 찾을 위한 첫 번째 몇 가지 단어를"Hello world,";붕괴,선택을 찾는 다음 세 가지 캐릭터에 대한 앞으로 단어를"모든"에서 bold;붕괴 선택(true)다음 중 다음 비트에 대한 말은"좋은". 이 결과를 식별하는 전체 구한 말씀만이 정말로 비효율적이며 매우 융통성이 있지 않습니다. 또한,를 선택한 다음의 문장 전체를 쓰는 코드를 이동하는 선택을 다시 시작하고 선택 영역을 확장합니다. 그럼 내가 다시 설정해야하는 검색을 계속 앞으로서는 위치입니다.

이 있을 쉽게/쉽게/더한 방식을 이 검색에 대한 문자열을 하나의 단어에서 이 문자열은 특정 속성을 가지고 있으며 다음과 같은 굵은? 저는 특별히 원하는 검색을 무시하는 인스턴스의 구를 어디에 관련된 단어입니다하지 않는 굵게 표시되어 있습니다.

나는 몇 시간을 보냈 검색이 구글과 stackflow 과 아무것도 찾을 수 없습니다.

I haven't 게시 코드이기 때문에 나는 아주 좋지 않다에 코드를 쓰고 나는 정말로 이해하고 있는 경우 유연한/우아한 방법으로 어떤 일을 하는 제가 원하는 것입니다. 유연성이 없는 루트 내가 위에서 설명입니다 그래서 유연성이 나는 꺼려하게 코딩 무언가이다.

감사 제레미

ms-word replace
2021-11-20 15:04:30
1

최고의 응답

0

메서드를 사용 하는 것은 검색에 대한 문자열을 발견하는 경우,다음 문자열 검색한 단어입니다. 여기에는 예입니다.

Sub Demo()
    Dim StringRange As Range
    Dim MatchFound  As Boolean
    
    With ActiveDocument.Range.Find
        ' The string to find
        .Text = "Hello world, all is good"
        
        ' Search the document
        Do While .Execute
            ' Capture the string
            Set StringRange = .Parent.Duplicate
            
            With .Parent.Duplicate.Find
                ' The word to find
                .Text = "all"
                .Font.Bold = True
                
                ' Search the string
                If .Execute Then
                    MatchFound = True
                    StringRange.Select
                    
                    If MsgBox("Match found. Continue searching?", vbQuestion + vbYesNo) = vbNo Then
                        Exit Sub
                    End If
                End If
            End With
        Loop
        
        If MatchFound Then
            MsgBox "Finished searching document", vbInformation
        Else
            MsgBox "No match found", vbInformation
        End If
    End With
End Sub
2021-11-20 20:55:18

Wow. 대단히 감사합니다. 이것은 정확히 무엇을 하고 싶었는 않습니다. 그것은 믿을 수 없을만큼 넉넉한 당신의 코드를 작성하고 아웃은 이렇습니다. 감사합니다. 나는 깜짝 놀라게 질문하지 않고 올 더 정기적으로 한다. 다시 한번 감사합니다. 는 절대적으로는 완벽합니다.
Jezza

다른 언어로

이 페이지는 다른 언어로되어 있습니다

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................