将红色文本复制到新文档(Microsoft Word)
Zikica有一个文档,其中包含许多文本选项,格式为红色。他想要一种选择红色文本的所有实例并将其复制到新文档的方法。他想知道这是否最好用宏来完成,或者是否有其他方法可以完成任务。
在使用宏完成任务之前,让我们先看看不使用宏即可完成此操作的几种方法。首先是按照以下步骤使用Word的“查找和替换”功能:
。打开一个新文件。 (这是将红色文本复制到的文档。)
。切换回原始文档。
。按Ctrl + H。 Word将显示“查找和替换”对话框的“替换”选项卡。
。单击查找选项卡。
。单击更多按钮(如果有)。对话框将展开。
(请参见图1。)
。如果没有格式按钮可用,请单击它。这消除了您以前可能搜索过的所有格式。
。确保“查找”框为空。
。单击格式按钮,然后单击字体。 Word将显示“查找字体”对话框。 (请参见图2。)
。单击字体颜色下拉列表,然后选择在文档中使用的红色阴影。
。单击“确定”关闭“查找字体”对话框。 Word将在“查找”框下方显示颜色信息。
。单击“查找范围”下拉列表,然后选择“主文档”。 Word选择文档中红色文本的所有实例,并在对话框中显示找到的实例数量。
。单击关闭以关闭“查找和替换”对话框。仍应选择所有红色文本实例。
。按Ctrl + C。这会将所有文本复制到剪贴板。
。切换到新文档。
。按Ctrl + V。 Word将所有红色文本粘贴到新文档中。
您还可以通过其他方式使用“查找和替换”来获得类似的解决方案。在这种方法中,首先要制作文档的副本,然后使用该副本进行工作:
。按Ctrl + H。 Word将显示“查找和替换”对话框的“替换”选项卡。
。单击更多按钮(如果有)。对话框将展开。
(请参见图3。)
。确保“查找”框为空,并且插入点位于该框中。
。单击格式按钮,然后单击字体。 Word将显示“查找字体”对话框。
。单击字体颜色下拉列表,然后选择自动。
。单击“确定”关闭“查找字体”对话框。 Word将在“查找”框下方显示颜色信息。
。确保“替换为”框为空。
。单击全部替换。 Word将显示一个对话框,通知您进行了多少次替换。
。单击“确定”关闭信息对话框。
。单击关闭以关闭“查找和替换”对话框。
此方法将删除文档中所有非红色文本,仅保留红色。 (这假设您在文档中仅包含常规文本和红色文本。如果要使用其他颜色,则需要重复这些步骤,并在步骤5中指定要删除的另一种颜色。)这是一个缺点方法是删除所有非红色文本,其中也可能包含段落结尾标记,因此您的红色文本可能会全部显示在一个段落中。
将红色文本复制到其他文档的另一种方法是绕过“查找和替换”并使用其他工具。请按照下列步骤操作:
。打开一个新文件。 (这是将红色文本复制到的文档。)
。切换回原始文档。
。将插入点放在红色文本内的某个位置。
。显示功能区的“主页”选项卡。
。在“编辑”组中,单击“选择”工具,然后选择“选择所有格式相似的文本”。 Word选择文档中所有类似格式的红色文本。
。按Ctrl + C。这会将所有文本复制到剪贴板。
。切换到新文档。
。按Ctrl + V。 Word将所有红色文本粘贴到新文档中。
如果您必须经常进行这种类型的编辑,则可能需要创建一个宏来为您完成任务。可以通过多种方式完成此操作,但是下面的内容足以说明这一概念。它为文档中所有红色文本创建一个变量数组,创建一个新文档,然后将变量数组的文本插入到新文档中。
Sub CopyRedTextToNewDoc() Dim i As Integer Dim a() As Variant Dim sFound As String Selection.Find.ClearFormatting Selection.Find.Font.Color = wdColorRed With Selection.Find .Text = "" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Do While Selection.Find.Found ReDim Preserve a(i) sFound = Selection If Asc(Right(sFound, 1)) <> 13 Then sFound = sFound & vbCrLf End If a(i) = sFound i = i + 1 Selection.Find.Execute Loop Application.Documents.Add For i = LBound(a) To UBound(a) ActiveDocument.Range.InsertAfter a(i) Next ' If you don't want the text in the new document to be red, ' remove the following three lines or comment them out Selection.WholeStory Selection.Font.Color = wdColorRed Selection.Collapse End Sub
注意:
如果您想知道如何使用此页面(或_WordTips_网站上的任何其他页面)上描述的宏,我准备了一个包含有用信息的特殊页面。
_WordTips_是您进行经济有效的Microsoft Word培训的来源。
(Microsoft Word是世界上最流行的文字处理软件。)本技巧(379)适用于Microsoft Word 2007、2010、2013和2016。