用于格式化所选文本的Microsoft Word宏,如用于所有实例的斜体例如
问题描述:
这是我的第一个问题, 我必须浏览大量文档并确保几个格式问题是正确的。这样一个问题的一个例子是确保所有句点“。”不是粗体,斜体,下划线等。另一个例子是确保所有“等”用斜体表示。用于格式化所选文本的Microsoft Word宏,如用于所有实例的斜体例如
我有一个需要的格式问题的列表。
而不是翻阅每个文档并使用查找/替换功能,我宁愿写一个宏,我可以应用于每个文档。
我没有使用VBA的经验。另一方面,我在C sharp和C编程方面有一些经验。
任何帮助将不胜感激。
顺便说一句,我不是要求一个完整的程序,而是一个样本,我可以从中学习和继续我自己的。
答
有几个选项:
1.Under在Word中开发选项卡,你可以点击“录制宏”按钮,并做了查找和替换多次,而使用Ctrl + H快捷键录制宏。
2.有多个较小的宏设置(如下面的两个)击中“录制宏”并按照你想要的顺序运行它们。
Sub ItalicizeEct()
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
Selection.Find.Replacement.Font.Italic = True
With Selection.Find
.Text = "ect."
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
Sub RemoveBoldPeriods()
Dim PunctAllRng As Word.Range
Set PunctAllRng = ActiveDocument.Range
With PunctAllRng.Find
.Format = True
.Text = "."
.Font.Bold = True
.Replacement.Text = "."
.Replacement.Font.Bold = False
.Execute Replace:=wdReplaceAll
End With
End Sub
3.Or干脆写一个大的宏,会经过你需要
宏录制将生产所需的所有代码时,你会同时手动执行他们记录所有这些变化中的所有编辑过程。 – 2013-02-14 10:51:03
看看这两个答案:http://stackoverflow.com/questions/13465709/repeating-ms-word-macro-until-no-search-results-found/14309412#14309412和http://stackoverflow.com /问题/ 14773971 /字-2007-VBA制作-一些文本,粗体其他斜体/ 14781570#14781570 – CuberChase 2013-02-14 11:13:16