次の方法で共有


ShapeRange オブジェクト (Excel)

文書の図形セットである図形範囲を表します。

注釈

図形範囲には、1 つの図形から、スライドのすべての図形を含めることができます。 文書上のすべての図形または選択範囲のすべての図形の中から選択した任意の図形を含め、図形範囲を作成できます。 たとえば文書にある、最初の 3 つの図形、選択したすべての図形、または文書のすべてのフリーフォームを含む ShapeRange コレクションを作成できます。

名前またはインデックス番号で指定した図形のセットを返します

Range (index) を使用して、index は図形の名前またはインデックス番号、または図形の名前またはインデックス番号を含む配列を使用して、ドキュメント上の図形のセットを表す ShapeRange コレクションを取得します。 Array 関数を使用して、名前またはインデックス番号の配列を作成します。

次の使用例は、 myDocument の図形 1 と 3 の塗りつぶしパターンを設定します。

Set myDocument = Worksheets(1) 
myDocument.Shapes.Range(Array(1, 3)).Fill.Patterned _ 
 msoPatternHorizontalBrick

次の使用例は、myDocument の Oval 4 と Rectangle 5 という名前の図形に塗りつぶしのパターンを設定します。

Range プロパティを使用して複数の図形を取得できますが、コレクションの単一のメンバーだけを取得する場合は、Item メソッドを使用する方が簡単です。 たとえば、 Shapes(1) より Shapes.Range(1) と記述すると効率的です。

Set myDocument = Worksheets(1) 
Set myRange = myDocument.Shapes.Range(Array("Oval 4", _ 
 "Rectangle 5")) 
myRange.Fill.Patterned msoPatternHorizontalBrick

ドキュメントで選択した図形のすべてまたは一部を返す

選択範囲内のすべての図形を取得するには、Selection オブジェクトの ShapeRange プロパティを使用します。 次の使用例は、選択範囲内に少なくとも 1 つの図形があると仮定して、ウィンドウ 1 のすべての図形の前景色に塗りつぶしを設定します。

Windows(1).Selection.ShapeRange.Fill.ForeColor.RGB = _ 
 RGB(255, 0, 255)

[選択] を使用しますShapeRange (index)、index は図形名またはインデックス番号で、選択範囲内の 1 つの図形を返します。 次の使用例は、選択範囲に少なくとも 2 つの図形があると仮定して、ウィンドウ 1 で選択した図形のコレクション内の図形 2 の塗りつぶしの前景色を設定します。

Windows(1).Selection.ShapeRange(2).Fill.ForeColor.RGB = _ 
 RGB(255, 0, 255)

メソッド

プロパティ

関連項目

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

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