Shape.RowCount プロパティ (Visio)

シェイプシート セクションの行数を返します。 読み取り専用です。

構文

RowCount( _Section_ )

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

パラメーター

名前 必須 / オプション データ型 説明
Section 必須 Integer 行数をカウントするセクションです。

戻り値

整数

注釈

引数 Section は、セクション定数である必要があります。 セクション定数の一覧については、AddSection メソッドを参照してください。

RowCount プロパティは、主に Geometry セクションや Connection Points セクションなど、可変の行数を含むセクションで使用します。 行数が固定されているセクションの場合、 RowCount プロパティは、セルがすべてマスターまたはスタイルから継承される行ではなく、図形に対してローカルな値を持つ少なくとも 1 つのセルを持つセクション内の行数を返します。 Microsoft Office Visio は多くの情報を格納する必要がないため、通常、マスターまたはスタイルから継承する方が優れています。 [シェイプシート] ウィンドウでは、ローカル値を持つセルが青で表示され、継承された値を持つセルは黒で表示されます。 IsInherited プロパティを使用して、セルが継承されているかどうかを判断します。

この VBA (Microsoft Visual Basic for Applications) マクロは、RowCount プロパティを使用し、繰り返しを利用してシェイプシートの行数を調べる方法を示します。

このマクロを実行するには、空白の図面と [基本ネットワーク図 (立体)] ステンシルを開き、ラベル、テキスト ボックス、およびリスト ボックスを含むユーザー フォームを挿入します。 リスト ボックスの幅は 150 に設定します。

注:

[コンピューターとモニター (米国単位)] ステンシルは、Microsoft Office Visio Professional でのみ使用できます。

 
Public Sub RowCount_Example() 
 
 Dim vsoStencil As Visio.Document 
 Dim vsoMaster As Visio.Master 
 Dim vsoPages As Visio.Pages 
 Dim vsoPage As Visio.Page 
 Dim vsoShape As Visio.Shape 
 Dim vsoCell As Visio.Cell 
 Dim intRows As Integer 
 Dim intCounter As Integer 
 
 'Get the Pages collection for the document. 
 'ThisDocument refers to the current document. 
 Set vsoPages = ThisDocument.Pages 
 
 'Get a reference to the first page of the Pages collection. 
 Set vsoPage = vsoPages(1) 
 
 'Get the Document object for the stencil. 
 Set vsoStencil = Documents("COMPS_U.VSS") 
 
 'Get the Master object for the desktop PC shape. 
 Set vsoMaster = vsoStencil.Masters("PC") 
 
 'Drop the shape in the approximate middle of the page. 
 'Coordinates passed to the Drop method are always in inches. 
 'The Drop method returns a reference to the new shape object. 
 Set vsoShape = vsoPage.Drop(vsoMaster, 4.25, 5.5) 
 
 'This example shows two methods of extracting custom 
 'properties. The first method retrieves the value of a custom 
 'property by name. 
 'Note that Prop.Manufacturer implies Prop.Manufacturer.Value. 
 Set vsoCell = vsoShape.Cells("Prop.Manufacturer") 
 
 'Get the cell value as a string 
 'and put it into the text box on the form. 
 UserForm1.TextBox1.Text = vsoCell.ResultStr(Visio.visNone) 
 
 'Set the caption of the label. 
 UserForm1.Label1.Caption = "Prop.Manufacturer" 
 
 'The second method of accessing custom properties uses 
 'section, row, cell. This method is best when you want 
 'to iterate through all the properties. 
 intRows = vsoShape.RowCount(Visio.visSectionProp) 
 
 'Make sure the list box is cleared. 
 UserForm1.ListBox1.Clear 
 
 'Loop through all the rows and add the value of Prop.Manufacturer 
 'to the list box. Rows are numbered starting with 0. 
 For intCounter = 0 To intRows - 1 
 Set vsoCell = vsoShape.CellsSRC(Visio.visSectionProp, intCounter, visCustPropsValue) 
 UserForm1.ListBox1.AddItem vsoCell.LocalName & vbTab & _ 
 vsoCell.ResultStr(Visio.visNone) 
 Next intCounter 
 
 'Display the user form. 
 UserForm1.Show 
 
End Sub

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

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