SlideRange オブジェクト (PowerPoint)

ノートまたはスライド範囲を表すコレクションで、1 つのスライドからプレゼンテーションすべてのスライドを含むことができるスライドの集合です。

解説

プレゼンテーションのすべてのスライドまたは選択しているすべてのスライドからスライド範囲を作成できます。 たとえば、プレゼンテーションの最初の 3 つのスライド、プレゼンテーションで選択したすべてのスライド、またはプレゼンテーションのすべてのタイトル スライドを指定する SlideRange コレクションを作成できます。

いくつかのスライドを選択し、画面上でそれらのスライドを同時に処理できるときと同様に、SlideRange コレクションを作成し、それにプロパティやメソッドを適用して、同時に複数のスライドを処理できます。 スライド表示モードで実行するコマンドの中には、複数のスライドを選択すると無効になるものがあるのと同様に、Slide オブジェクトまたは 1 つのスライドだけを含む SlideRange コレクションで実行されるプロパティやメソッドの中にも、複数のスライドを含む SlideRange コレクションに適用すると失敗するものがあります。 通常、複数のスライドが選択され、手動で処理を実行できない場合、複数のスライドを含む SlideRange コレクションを使用してもプログラムで実行することはできません。

単一のスライドまたは複数のスライドが選択されているかにより、画面から実行される操作 (クリップボードへのコピー、スライドの背景色の設定など) に対し、これらの操作に関連するプロパティとメソッドは、複数のスライドを含む SlideRange コレクションで実行されます。 これらのプロパティやメソッドを複数のスライドに適用するときの各動作のガイドラインを次に示します。

  • SlideRange コレクションにメソッドを適用することと、その範囲のすべての Slide オブジェクトをグループとして、メソッドを適用することは同じです。

  • SlideRange コレクションのプロパティの値を設定することと、各スライドで個別にプロパティの値を設定することは同じです (列挙型のプロパティでは mixed 値を設定しても効果はありません)。

  • 列挙型を取得する SlideRange コレクションのプロパティは、コレクションのすべてのスライドが同じプロパティ値を持つ場合、コレクションのそれぞれのスライドのプロパティ値を取得します。 コレクションのすべてのスライドで、このプロパティ値が異なる場合、プロパティは異なる複数の値を取得します。

  • 単純なデータ型 (Long、Single、String など) を返す SlideRange コレクションのプロパティは、コレクション内のすべてのスライドに同じ値がある場合、コレクション内の個々のスライドのプロパティの値を返します。 コレクションのすべてのスライドで、このプロパティ値が異なる場合、プロパティは -2 を返すか、エラーとなります。 たとえば、複数のスライドを含む Name オブジェクトで SlideRange プロパティを使用すると、各スライドの Name プロパティ値が異なるために、エラーが発生します。

  • スライドの書式設定プロパティの中には、 SlideRange コレクションに直接適用されるプロパティやメソッドでは設定されず、 SlideRange オブジェクトなどの、 ColorScheme コレクションに含まれるオブジェクトに適用されるプロパティやメソッドで設定されるプロパティがあります。 含まれるオブジェクトが画面上の複数のオブジェクトで実行できる操作を表す場合、複数のスライドを含む SlideRange コレクションからオブジェクトを取得でき、そのプロパティやメソッドは、前述の規則に従います。 たとえば、ColorScheme プロパティを使用して、指定した ColorScheme コレクションのすべてのスライドで使用される配色を表す SlideRange オブジェクトを取得できます。 この ColorScheme オブジェクトにプロパティを設定すると、ColorScheme コレクションのすべてのスライドの SlideRange オブジェクトにもこれらのプロパティが設定されます。

次の使用例は、次の方法を示しています。

  • 名前またはインデックス番号で指定したスライドの集合を取得する

  • プレゼンテーションで選択したすべての、またはいくつかのスライドを取得する

  • ノートを取得する

  • スライド範囲にプロパティおよびメソッドを適用する

スライドの名前またはインデックス番号、またはスライドの名前またはインデックス番号を含む配列である Slide.Range (index) を使用して、プレゼンテーション内のスライドのセットを表す SlideRange コレクションを返します。 Array 関数を使用して、名前またはインデックス番号の配列を作成できます。 次の使用例は、作業中のプレゼンテーションのスライド 1 と 3 の背景に塗りつぶしを設定します。

With ActivePresentation.Slides.Range(Array(1, 3))

    .FollowMasterBackground = False
    .Background.Fill.PresetGradient msoGradientHorizontal, _
         1, msoGradientLateSunset

End With

次の使用例は、作業中のプレゼンテーションの "Intro" および "Big Chart" という名前のスライドの背景に塗りつぶしを設定します。 スライドが作成されると、作成したフォーム名 Sliden (n は整数) が自動的に割り当てられます。 スライドにわかりやすい名前を割り当てるには 、Name プロパティを使用します。

With ActivePresentation.Slides.Range(Array("Intro", "Big Chart"))

    .FollowMasterBackground = False
    .Background.Fill.PresetGradient msoGradientHorizontal, _
        1, msoGradientLateSunset

End With

Rangeメソッドを使用して任意の数のスライドを取得することができますが、SlideRange コレクションの 1 つのメンバーのみを返す場合は 、Itemメソッドを使用する 方が簡単 です。 たとえば、 Slides(1) より Slides.Range(1) と記述すると効率的です。

Selection オブジェクト の SlideRangeプロパティを 使用 して、選択範囲のすべてのスライドを取得します。 次の使用例は、ウィンドウ 1 で選択したすべてのスライドの背景に塗りつぶしを設定します。

With Windows(1).Selection.SlideRange

    .FollowMasterBackground = False
    .Background.Fill.PresetGradient msoGradientHorizontal, _
        1, msoGradientLateSunset

End With

Selection.SlideRange (index) を使用して 、index はスライド名またはインデックス番号で、選択範囲から 1 つのスライドを返します。 次の使用例は、ウィンドウ 1 で選択したスライドのコレクションのスライド 2 の背景に塗りつぶしを設定します。

With Windows(1).Selection.SlideRange(2)

    .FollowMasterBackground = False
    .Background.Fill.PresetGradient msoGradientHorizontal, _
        1, msoGradientLateSunset

End With

ノートを表す NotesPage コレクションを取得するには、 SlideRange プロパティを使用します。 次の使用例は、作業中のプレゼンテーションのスライド 1 のノートのプレースホルダー 2 (ノート領域) にテキストを挿入します。

ActivePresentation.Slides(1).NotesPage.Shapes _
    .Placeholders(2).TextFrame.TextRange.InsertAfter "Added Text"

関連項目

PowerPoint オブジェクト モデル リファレンス

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。