Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 用于格式化选定文本的Microsoft Word宏,例如所有实例的斜体,例如_Vba_Ms Word - Fatal编程技术网

Vba 用于格式化选定文本的Microsoft Word宏,例如所有实例的斜体,例如

Vba 用于格式化选定文本的Microsoft Word宏,例如所有实例的斜体,例如,vba,ms-word,Vba,Ms Word,这是我的第一个问题,, 我必须检查大量文档,确保几个格式问题是正确的。这类问题的一个例子是确保所有句号“.”都不是粗体、斜体、下划线等。另一个例子是确保所有“等”都是斜体 我有一个所需格式问题的列表 与其浏览每个文档并使用find/replace函数,我宁愿编写一个可以应用于每个文档的宏 我没有VBA的经验。另一方面,我有一些用C语言和C语言编程的经验 任何帮助都将不胜感激 顺便说一句,我不是要一个完整的程序,而是要一个我可以学习并继续自己学习的示例。有几个选项: 1.在Word中的“开发人员”

这是我的第一个问题,, 我必须检查大量文档,确保几个格式问题是正确的。这类问题的一个例子是确保所有句号“.”都不是粗体、斜体、下划线等。另一个例子是确保所有“等”都是斜体

我有一个所需格式问题的列表

与其浏览每个文档并使用find/replace函数,我宁愿编写一个可以应用于每个文档的宏

我没有VBA的经验。另一方面,我有一些用C语言和C语言编程的经验

任何帮助都将不胜感激


顺便说一句,我不是要一个完整的程序,而是要一个我可以学习并继续自己学习的示例。

有几个选项:

1.在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.或者简单地编写一个大型宏,它将经历您需要的所有编辑过程

当您在手动执行更改时记录所有这些更改时,宏记录器将为您生成所有所需的代码。请看以下两个答案:和