Shape.GeometryCount 属性 (Visio)
返回形状的“Geometry”内容的数量。 此为只读属性。
语法
expression。 GeometryCount
表达 一个代表 Shape 对象的变量。
返回值
整数
示例
以下 Microsoft Visual Basic for Applications (VBA) 宏显示如何使用 GeometryCount 属性确定形状具有的“Geometry”内容的数量。
要运行此宏,首先向您的项目中插入一个包含列表框的用户窗体。 使用窗体和列表框的默认名称。 在“属性”窗口中,将窗体的宽度设置为 400,列表框的宽度设置为 300。 此宏还假定在活动页上有一个或多个形状。
Public Sub GeometryCount_Example()
Dim vsoShape As Visio.Shape
Dim intCurrentGeometrySection As Integer
Dim intCurrentGeometrySectionIndex As Integer
Dim intRows As Integer
Dim intCells As Integer
Dim intCurrentRow As Integer
Dim intCurrentCell As Integer
Dim intSections As Integer
'Get the first shape from the active page.
Set vsoShape = ActivePage.Shapes(1)
'Clear the list box.
UserForm1.ListBox1.Clear
'Get the count of Geometry sections in the shape.
'(If the shape is a group, this will be 0.)
intSections = vsoShape.GeometryCount
'Iterate through all Geometry sections for the shape.
'Because we are adding the current Geometry section index to
'the constant visSectionFirstComponent, we must start with 0.
For intCurrentGeometrySectionIndex = 0 To intSections - 1
'Set a variable to use when accessing the current
'Geometry section.
intCurrentGeometrySection = visSectionFirstComponent + intCurrentGeometrySectionIndex
'Get the count of rows in the current Geometry section.
intRows = vsoShape.RowCount(intCurrentGeometrySection)
'Loop through the rows. The count is zero-based.
For intCurrentRow = 0 To (intRows - 1)
'Get the count of cells in the current row.
intCells = vsoShape.RowsCellCount(intCurrentGeometrySection, intCurrentRow)
'Loop through the cells. Again, this is zero-based.
For intCurrentCell = 0 To (intCells - 1)
'Get the cell's formula and
'add it to the list box.
UserForm1.ListBox1.AddItem _
vsoShape.CellsSRC(intCurrentGeometrySection, intCurrentRow, _
intCurrentCell).LocalName & ": " & _
vsoShape.CellsSRC(intCurrentGeometrySection, intCurrentRow, _
intCurrentCell).Formula
Next intCurrentCell
Next intCurrentRow
Next intCurrentGeometrySectionIndex
'Display the user form.
UserForm1.Show
End Sub
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。