TextRange.Replace 方法 (PowerPoint)

在文本范围内查找特定文本,用指定的字符串替换找到的文本并返回 TextRange 对象,该对象表示找到的文本的第一个匹配项。 如果未找到匹配,则返回 Nothing

语法

表达式替换 (FindWhatReplaceWhatAfterMatchCaseWholeWords)

表达 一个代表 TextRange 对象的变量。

参数

名称 必需/可选 数据类型 说明
FindWhat 必需 String 要搜索的文本。
ReplaceWhat 必需 String 用来替换查找到的文本的文本。
After 可选 Integer 指定文本范围内开始搜索下一处 FindWhat 匹配内容的字符位置。 例如,如果要从文本范围的第五个字符开始搜索,则可指定 After 为 4。 如果省略此参数,则将文本范围的第一个字符作为搜索的起点。
MatchCase 可选 MsoTriState 确定是否区分大小写。
WholeWords 可选 MsoTriState 确定是否只查找全字匹配的内容。

返回值

TextRange

备注

MatchCase 参数值可以是下列 MsoTriState 常量之一。

常量 说明
msoFalse 默认值。 不区分字符的大小写。
msoTrue 区分字符的大小写。

WholeWords 参数值可以是下列 MsoTriState 常量之一。

常量 说明
msoFalse 默认值。 不只查找全字匹配。
msoTrue 只查找全字匹配。

示例

本示例在活动文档内的所有形状中,查找每一处全字匹配“like”的内容,并将其替换为“NOT LIKE”。

Sub ReplaceText()

    

    Dim oSld As Slide

    Dim oShp As Shape

    Dim oTxtRng As TextRange

    Dim oTmpRng As TextRange

     

    Set oSld = Application.ActivePresentation.Slides(1)

    

    For Each oShp In oSld.Shapes

        Set oTxtRng = oShp.TextFrame.TextRange

        Set oTmpRng = oTxtRng.Replace(FindWhat:="like", _
            Replacewhat:="NOT LIKE", WholeWords:=True)

        Do While Not oTmpRng Is Nothing
            Set oTxtRng = oTxtRng.Characters(oTmpRng.Start + oTmpRng.Length, _
                oTxtRng.Length)

            Set oTmpRng = oTxtRng.Replace(FindWhat:="like", _
                Replacewhat:="NOT LIKE", WholeWords:=True)
        Loop

    Next oShp



End Sub

另请参阅

TextRange 对象

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。