Replace メソッド

Microsoft PowerPoint Visual Basic リファレンス

Replace メソッド

TextRange オブジェクトの Replace メソッド

指定したテキスト範囲から置き換える文字列を検索し、指定した文字列に置き換え、最初に見つかったテキストを表す TextRange オブジェクトを返します。一致するものが見つからない場合は、Nothing を返します。

expression.Replace(FindWhat, ReplaceWhat, After, MatchCase, WholeWords)

*expression *  必ず指定します。対象となるオブジェクトへの参照を返すオブジェクト式を指定します。

FindWhat  必ず指定します。文字列型 (String) の値を指定します。検索するテキストを指定します。

ReplaceWhat  必ず指定します。文字列型 (String) の値を指定します。置き換えるテキストを指定します。

After  省略可能です。長整数型 (Long) の値を指定します。引数 FindWhat の内容を指定したテキスト範囲のどこから検索するか、その文字の位置を指定します。たとえば、テキスト範囲の 4 番目の文字から検索するには、引数 After には 4 を指定します。この引数を省略すると、テキスト範囲の先頭から検索を開始します。

MatchCase* 省略可能です。**MsoTriState クラスの定数を使用します。大文字小文字を区別するかどうかを指定します。*

使用できる定数は、次に示す MsoTriState クラスの定数のいずれかです。
msoCTrue
msoFalse (既定値)
msoTriStateMixed
msoTriStateToggle
msoTrue 大文字小文字を区別します。

WholeWords* 省略可能です。**MsoTriState クラスの定数を使用します。完全に一致する単語だけを検索するかどうか指定します。*

使用できる定数は、次に示す MsoTriState クラスの定数のいずれかです。
msoCTrue
msoFalse (既定値)
msoTriStateMixed
msoTriStateToggle
msoTrue 単語の一部ではなく、完全に一致する単語を検索します。

Fonts オブジェクトの Replace メソッド

Fonts コレクションのフォントを置き換えます。

expression.Replace(Original, Replacement)

*expression *  必ず指定します。対象となるオブジェクトへの参照を返すオブジェクト式を指定します。

Original  必ず指定します。文字列型 (String) の値を指定します。置き換えるフォントの名前を指定します。

Replacement  必ず指定します。文字列型 (String) の値を指定します。置換フォントの名前を指定します。

使用例

TextRange オブジェクトの場合

次の使用例は、作業中のプレゼンテーションのすべての図形で、"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
				

Fonts オブジェクトの場合

次の使用例は、作業中のプレゼンテーション中の Times New Roman フォントを Courier フォントに置き換えます。

Application.ActivePresentation.Fonts _
    .Replace Original:="Times New Roman", Replacement:="Courier"