2010-07-29 50 views
2

我有一堆需要编辑的文档。作者在文档的某些部分使用蓝色文本来表明这些词需要链接。如何自动高亮显示和提取MS Word中的彩色文本?

谢谢科尼利厄斯的亮点文本代码:

Sub HighlightNotBlack() 
    Dim char As Range 

For Each char In ActiveDocument.Characters 
If char.Font.Color <> wdColorAutomatic And char.Font.Color <> wdColorBlack Then 
    char.HighlightColorIndex = wdYellow 
End If 
Next 
End Sub 

我想就这个问题展开。是否可以仅将突出显示的文本提取到新的单词文件中?还应该足够聪明地知道,一个句子中的两个或更多连续单词将全部出现在新文档的一行中,而不是每个单词在新文档中都有自己的行。我认为它可以查找所有突出显示的选择,并且只会将这些文字整个区域的文本完全突出显示。

+1

您应该开放一个新的问题,因为它与您已经回答的原始问题有点不同。 – 2010-08-02 21:30:19

回答

1

我带着类似的东西来。它突出显示活动文档中的所有非黑色和非自动字符。

Sub HighlightNotBlack() 
Dim char As Range 

For Each char In ActiveDocument.Characters 
    If char.Font.Color <> wdColorAutomatic And char.Font.Color <> wdColorBlack Then 
     char.HighlightColorIndex = wdYellow 
    End If 
Next 
End Sub 
+0

感谢您的帮助! 我想知道你是否也知道如何让它忽略超链接文本。 最后,如果有一个宏将高亮显示的单词提取到单独的文件中,每个突出显示的选择单独放在文件中,这将是非常好的选择。 我可能会要求太多,但在这方面展开会很棒! – Vlad 2010-08-02 14:23:34

1

嗨,这是您的完美解决方案。 我已经写了这个宏代码并进行了测试。 http://blog.haneefputtur.com/2012/02/macro-to-extract-highlighted-words-from.html

+0

欢迎来到Stack Overflow!您不应该仅仅给出另一个网站的链接作为答案,因为该网站将来可能会过时。相反,单击此答案上的“编辑”链接,并在此处包含解决方案的主要部分。请参阅:http://meta.stackexchange.com/q/8259 – 2012-02-23 07:16:58