Shapes オブジェクト (Publisher)

文書のページ上のすべての図形を表す Shape オブジェクトのコレクションです。 各 Shape オブジェクトは、オートシェイプ、フリー フォームの描画レイヤーのオブジェクト、OLE オブジェクト、または図を表します。

注:

ドキュメント上の図形のサブセットを操作する場合 (たとえば、ドキュメント上のオートシェイプのみ、または選択した図形のみに対して何かを行う場合)、作業する図形を含む ShapeRange コレクションを作成する必要があります。

注釈

Shapes コレクションを取得するには、Page.Shapes プロパティを使用します。 単一の Shape オブジェクトを返すには、Shapes (index) を使用しますindex はインデックス番号です。

注:

文書内のすべての図形に対して (プロパティの削除や設定など) を同時に行う場合は、Range メソッドを使用して、Shapes コレクション内のすべての図形を含む ShapeRange オブジェクトを作成し、適切なプロパティまたはメソッドを ShapeRange オブジェクトに適用します。

Shapes コレクションの次のいずれかのメソッドを使用して、文書に図形を追加し、新しく作成された図形を表す Shape オブジェクトを返します。

次の使用例は、作業中の文書のすべての図形を選択します。

Sub SelectAllShapes() 
    ActiveDocument.Pages(1).Shapes.SelectAll 
End Sub

次の例では、作業中の文書に新しい図形を追加します。

Sub AddNewShape() 
    ActiveDocument.Pages(1).Shapes.AddShape Type:=msoShapeFoldedCorner, _ 
        Left:=50, Top:=50, Width:=100, Height:=200 
End Sub

次の使用例は、作業中の文書の最初のページの 1 番目の図形を左右に反転します。

Sub FlipShape() 
    ActiveDocument.Pages(1).Shapes(1).Flip FlipCmd:=msoFlipHorizontal 
End Sub

メソッド

プロパティ

関連項目

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

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