次の方法で共有


Shape.Layer プロパティ (Visio)

図形が割り当てられているレイヤーを返します。 読み取り専用です。

構文

Layer (インデックス)

Shape オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
Index 必須 Integer 取得するレイヤーの順番です。

戻り値

Layer

注釈

図形が 3 つのレイヤーに割り当てられている場合、Layer プロパティに渡される有効なインデックスは、1 ~ 3 です。

図形が割り当てられているレイヤー数を取得するには、LayerCount プロパティを使用します。

次の Microsoft Visual Basic for Applications (VBA) マクロは、Layer プロパティを使用して、特定のレイヤーに対する参照を取得する方法を示しています。 さらに、LayerCount プロパティを使用して、図形に関連付けられているレイヤー数を判別し、Name プロパティを使用して、現在のレイヤーの名前を取得します。

 
Public Sub Layer_Example() 
 
 Dim vsoPage As Visio.Page 
 Dim vsoShape As Visio.Shape 
 Dim vsoLayers As Visio.Layers 
 Dim vsoLayer As Visio.Layer 
 
 If ActiveDocument Is Nothing Then 
 Documents.Add ("") 
 End If 
 
 Set vsoPage = ActivePage 
 If vsoPage Is Nothing Then 
 Set vsoPage = ActiveDocument.Pages(1) 
 End If 
 
 'Draw a rectangle. 
 Set vsoShape = vsoPage.DrawRectangle(1, 5, 5, 1) 
 
 'Get the Layers collection. 
 Set vsoLayers = vsoPage.Layers 
 
 'Create a layer named ExampleLayer1 and add the shape to it. 
 Set vsoLayer = vsoLayers.Add("ExampleLayer1") 
 vsoLayer.Add vsoShape, 1 
 
 'Create a layer named ExampleLayer2 and add the shape to it. 
 Set vsoLayer = vsoLayers.Add("ExampleLayer2") 
 vsoLayer.Add vsoShape, 1 
 
 'Verify that the shape has been assigned to 2 layers. 
 Debug.Print "The rectangle is assigned to " & vsoShape.LayerCount & " layers." 
 
 'Get a reference to the first layer. 
 Set vsoLayer = vsoShape.Layer(1) 
 
 'Verify by using the Name property. 
 Debug.Print "Current vsoLayer name is """ & vsoLayer.Name & ".""" 
 
End Sub

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

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