Option Explicit Sub SetSuperscriptAndSubscript(ByVal PrefixChr As String, ByVal SetChr As String, Optional ByVal SuperscriptMode As Boolean = True) '程序功能:设置文档中特定字符为上标或下标。 '参数说明: 'PrefixChr:必选参数,要设置为上、下标字符之前的字符; 'SetChr:必选参数,要设置为上、下标的字符; 'SuperscriptMode:可选参数,设置为 True 表示将 SetChr 设置为上标,设置为 False 表示将 SetChr 设置为下标,默认为 True。 '举例说明: '我们要将文档中所有的“m3/s”中的“3”设置为上标,可通过下面这一行代码调用本程序完成: 'SetSuperscriptAndSubscript "M","3" '这里设置上标,可省略第三个参数。 Selection.Start = ActiveDocument.Paragraphs(1).Range.Start '将光标定位至活动文档第一段落段首的位置 Selection.Collapse wdCollapseStart '折叠至起始位置 With Selection.Find .ClearFormatting .Replacement.ClearFormatting .Text = PrefixChr & SetChr .Replacement.Text = "^&" If SuperscriptMode Then .Replacement.Font.Superscript = True Else .Replacement.Font.Subscript = True .Execute Replace:=wdReplaceAll .ClearFormatting .Replacement.ClearFormatting .Text = PrefixChr If SuperscriptMode Then .Font.Superscript = True Else .Font.Subscript = True .Replacement.Text = "^&" If SuperscriptMode Then .Replacement.Font.Superscript = False Else .Replacement.Font.Subscript = False .Execute Replace:=wdReplaceAll End With End Sub