• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Makro Word nie zaznacza sformatowanych kolorem wyrażeń

VPS Starter Arubacloud
+1 głos
204 wizyt
pytanie zadane 22 grudnia 2020 w Visual Basic przez Emillo Nowicjusz (130 p.)

Nie znam VBA i nie umiem znaleźć przyczyny mojego problemu

Sub Makro1()
'
' Makro1 Makro
'
'
    Selection.Find.ClearFormatting
    Selection.Find.Font.Color = 34816
    With Selection.Find
        .Text = ""
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
End Sub

. Makro w Wordzie 2016, zapisane rejestratorem makr, po uruchomieniu nie zaznacza sformatowanych kolorem słów,  nic się nie dzieje. Może rejestrator coś pomija?

komentarz 24 grudnia 2020 przez Emillo Nowicjusz (130 p.)
Hey, thanks, but my problem is something else. I will say it differently:

Using MS Word VBA how to Find and Select text  formatted with the color e.g. RGB(0,100,0)?

1 odpowiedź

0 głosów
odpowiedź 23 grudnia 2020 przez VBService Ekspert (255,440 p.)
edycja 23 grudnia 2020 przez VBService

How Can I Search For (and Reformat) Highlighted Text in a Word Document?

Hey, Scripting Guy! How can I find text in a Word document that has been highlighted in a particular color (say, turquoise), and ...

Finding Text Using a Specific Highlighting Color

The only way around this is to use a macro to do the finding. VBA allows you to detect the color used to highlight text, which is why this approach will work. The following macro uses Find and Replace to do the finding, but then it checks to see what the HighlightColorIndex property is for what was found. If it is equal to wdYellow (an enumeration for the color yellow), then the text is selected and the macro is exited.

 

Sub FindNextYellow()
    With Selection.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Text = ""
        .MatchWildcards = False
        .Forward = True
        .Wrap = wdFindContinue
        .Highlight = True
        Do
            .Execute
        Loop Until Selection.Range.HighlightColorIndex = wdYellow Or Not .Found
        Selection.Range.Select
    End With
End Sub

You can search for different colors simply by changing the wdYellow enumeration to the enumeration for whatever color you want.

Range.HighlightColorIndex property (Word)

Word: Find highlighted text

 

komentarz 24 grudnia 2020 przez Emillo Nowicjusz (130 p.)
Hey, thanks, but my problem is something else. I will say it differently:

Using MS Word VBA how to Find and Select text  formatted with the color e.g. RGB(0,100,0)?
komentarz 24 grudnia 2020 przez VBService Ekspert (255,440 p.)
edycja 24 grudnia 2020 przez VBService
komentarz 26 grudnia 2020 przez Emillo Nowicjusz (130 p.)

Thank you, the code works fine. But I want to select all expressions written with font, e.g. green (0,136,0). This is different from highlighting. How do I change the macro to solve my case?

Podobne pytania

0 głosów
0 odpowiedzi 983 wizyt
0 głosów
0 odpowiedzi 690 wizyt
0 głosów
1 odpowiedź 129 wizyt

92,843 zapytań

141,782 odpowiedzi

320,858 komentarzy

62,174 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...