如何使用vba从word文档中查找和复制特定内容,并将其复制到另一个文档中
我录制了一个宏,用于将特定内容从一个word文档提取到另一个word文档,但它的功能有限。我需要将所有选定的内容提取到新文档中,并在同一文件名中使用后缀或前缀“glos”保存它 由于文档名处于活动状态,未将宏用于其他文档,即使更改了宏中的文件名,它也会提取内容,直到宏中记录的计数为止 使用正则表达式查找指定的内容如何使用vba从word文档中查找和复制特定内容,并将其复制到另一个文档中,vba,ms-word,Vba,Ms Word,我录制了一个宏,用于将特定内容从一个word文档提取到另一个word文档,但它的功能有限。我需要将所有选定的内容提取到新文档中,并在同一文件名中使用后缀或前缀“glos”保存它 由于文档名处于活动状态,未将宏用于其他文档,即使更改了宏中的文件名,它也会提取内容,直到宏中记录的计数为止 使用正则表达式查找指定的内容“\(*)\” 输入: <CHAP_NUM>01</CHAP_NUM> <CHAP_TL> Lorem Ipsum</CHAP_
“\(*)\”
输入:
<CHAP_NUM>01</CHAP_NUM>
<CHAP_TL> Lorem Ipsum</CHAP_TL>
<PARA>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</PARA>
<MN_GLOS>
Lorem Ipsum is simply dummy text.
</MN_GLOS>
<PARA>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</PARA>
<PARA>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</PARA>
<PARA>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</PARA>
<MN_GLOS>
Lorem Ipsum is simply dummy text.
</MN_GLOS>
<MN_GLOS>
Lorem Ipsum is simply dummy text.
</MN_GLOS>
<PARA>Lorem Ipsum is simply dummy text of the printing and typesetting industry.</PARA>
<MN_GLOS>
Lorem Ipsum is simply dummy text.
Lorem Ipsum is simply dummy text.
</MN_GLOS>
01
乱数假文
Lorem Ipsum只是印刷和排版行业的虚拟文本。
Lorem Ipsum只是一个虚拟文本。
Lorem Ipsum只是印刷和排版行业的虚拟文本。
Lorem Ipsum只是印刷和排版行业的虚拟文本。
Lorem Ipsum只是印刷和排版行业的虚拟文本。
Lorem Ipsum只是一个虚拟文本。
Lorem Ipsum只是一个虚拟文本。
Lorem Ipsum只是印刷和排版行业的虚拟文本。
Lorem Ipsum只是一个虚拟文本。
Lorem Ipsum只是一个虚拟文本。
宏
Sub Macro5()
'
' Macro5 Macro
'
'
selection.Find.ClearFormatting
With selection.Find
.Text = "\<(MN_GLOS)\>(*)\</(\1)\>"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = True
End With
selection.Find.Execute
selection.Copy
selection.PasteAndFormat (wdUseDestinationStylesRecovery)
selection.TypeParagraph
Windows("ca_ch01__studyingsexlty_24feb2018CE_QA.doc [Compatibility Mode]") _
.Activate
Application.Browser.Next
selection.Copy
Windows("Doc1.docx").Activate
selection.PasteAndFormat (wdUseDestinationStylesRecovery)
selection.TypeParagraph
Windows("ca_ch01__studyingsexlty_24feb2018CE_QA.doc [Compatibility Mode]") _
.Activate
Application.Browser.Next
selection.Copy
Windows("Doc1.docx").Activate
selection.PasteAndFormat (wdUseDestinationStylesRecovery)
selection.TypeParagraph
Windows("ca_ch01__studyingsexlty_24feb2018CE_QA.doc [Compatibility Mode]") _
.Activate
Application.Browser.Next
selection.Copy
Windows("Doc1.docx").Activate
selection.PasteAndFormat (wdUseDestinationStylesRecovery)
selection.TypeParagraph
Windows("ca_ch01__studyingsexlty_24feb2018CE_QA.doc [Compatibility Mode]") _
.Activate
Application.Browser.Next
selection.Copy
Windows("Doc1.docx").Activate
selection.PasteAndFormat (wdUseDestinationStylesRecovery)
selection.TypeParagraph
Windows("ca_ch01__studyingsexlty_24feb2018CE_QA.doc [Compatibility Mode]") _
.Activate
Application.Browser.Next
selection.Copy
Windows("Doc1.docx").Activate
selection.PasteAndFormat (wdUseDestinationStylesRecovery)
selection.TypeParagraph
Windows("ca_ch01__studyingsexlty_24feb2018CE_QA.doc [Compatibility Mode]") _
.Activate
Application.Browser.Next
selection.Copy
Windows("Doc1.docx").Activate
selection.PasteAndFormat (wdUseDestinationStylesRecovery)
selection.TypeParagraph
Windows("ca_ch01__studyingsexlty_24feb2018CE_QA.doc [Compatibility Mode]") _
.Activate
Application.Browser.Next
selection.Copy
Windows("Doc1.docx").Activate
selection.PasteAndFormat (wdUseDestinationStylesRecovery)
End Sub
Sub宏5()
'
'宏5宏
'
'
selection.Find.ClearFormatting
选择。查找
.Text=“\(*)\”
.Replacement.Text=“”
.Forward=True
.Wrap=wdFindContinue
.Format=False
.MatchCase=False
.MatchWholeWord=False
.MatchAllWordForms=False
.MatchSoundsLike=False
.MatchWildcards=True
以
selection.Find.Execute
选择,复制
selection.PasteAndFormat(wdUseDestinationStylesRecovery)
选择.类型段落
Windows(“ca_ch01_studyingsexlty_2018年2月24日CE_QA.doc[兼容模式]”)_
.激活
Application.Browser.Next
选择,复制
Windows(“Doc1.docx”)。激活
selection.PasteAndFormat(wdUseDestinationStylesRecovery)
选择.类型段落
Windows(“ca_ch01_studyingsexlty_2018年2月24日CE_QA.doc[兼容模式]”)_
.激活
Application.Browser.Next
选择,复制
Windows(“Doc1.docx”)。激活
selection.PasteAndFormat(wdUseDestinationStylesRecovery)
选择.类型段落
Windows(“ca_ch01_studyingsexlty_2018年2月24日CE_QA.doc[兼容模式]”)_
.激活
Application.Browser.Next
选择,复制
Windows(“Doc1.docx”)。激活
selection.PasteAndFormat(wdUseDestinationStylesRecovery)
选择.类型段落
Windows(“ca_ch01_studyingsexlty_2018年2月24日CE_QA.doc[兼容模式]”)_
.激活
Application.Browser.Next
选择,复制
Windows(“Doc1.docx”)。激活
selection.PasteAndFormat(wdUseDestinationStylesRecovery)
选择.类型段落
Windows(“ca_ch01_studyingsexlty_2018年2月24日CE_QA.doc[兼容模式]”)_
.激活
Application.Browser.Next
选择,复制
Windows(“Doc1.docx”)。激活
selection.PasteAndFormat(wdUseDestinationStylesRecovery)
选择.类型段落
Windows(“ca_ch01_studyingsexlty_2018年2月24日CE_QA.doc[兼容模式]”)_
.激活
Application.Browser.Next
选择,复制
Windows(“Doc1.docx”)。激活
selection.PasteAndFormat(wdUseDestinationStylesRecovery)
选择.类型段落
Windows(“ca_ch01_studyingsexlty_2018年2月24日CE_QA.doc[兼容模式]”)_
.激活
Application.Browser.Next
选择,复制
Windows(“Doc1.docx”)。激活
selection.PasteAndFormat(wdUseDestinationStylesRecovery)
端接头
输出(新docx)
Lorem Ipsum只是一个虚拟文本。
Lorem Ipsum只是一个虚拟文本。
Lorem Ipsum只是一个虚拟文本。
Lorem Ipsum只是一个虚拟文本。
Lorem Ipsum只是一个虚拟文本。
请帮助我将内容提取到新文档。您想要什么还不清楚。您显示的代码不执行任何搜索(Find),并且由于您没有描述此宏正在执行什么以及它如何“不工作”,因此很难知道从何处开始帮助您。尝试使用Word的(高级)查找功能录制宏以执行基本搜索。然后看看这篇文章,了解如何使用干预操作进行多个搜索。这只是这类事情的数百个例子之一。@Cindy Meister,谢谢你的回答,实际上我是vba的初学者。在这里,我需要将特定内容导出到新的word文档中。我刚刚找到了
“\([!”“]*)?\”
&复制内容并将其粘贴到另一个文档中,这个过程应该重复到最后。
<MN_GLOS>
Lorem Ipsum is simply dummy text.
</MN_GLOS>
<MN_GLOS>
Lorem Ipsum is simply dummy text.
</MN_GLOS>
<MN_GLOS>
Lorem Ipsum is simply dummy text.
</MN_GLOS>
<MN_GLOS>
Lorem Ipsum is simply dummy text.
Lorem Ipsum is simply dummy text.
</MN_GLOS>