Выберите сгруппированные фигуры в VBA (Visio)
Я пытаюсь запустить все формы моего текущего документа visio, используя VBA для экспорта некоторых строк из него.
Это кажется простым, но я не знаю, как получить сгруппированные фигуры.Делая:
Dim vsoShapes AS Visio.Shapes
Dim vsoShape AS Visio.Shape
Set vsoShapes = Application.ActiveWindow.Page.Shapes
For Each vsoShape In vsoShapes
' my code
' my code
Next
Я собираюсь получить доступ ко всем родительским фигурам. То, что я хочу, - это получить доступ к формам детей. Можно ли получить к нему доступ, не разгруппировывая сгруппированную (родительскую) фигуру?
1 ответ:
Можно использовать свойство
Shapes
, т. е.vsoShape.Shapes(1).Name
.Полный цикл:
Dim vsoShapes AS Visio.Shapes Dim vsoShape AS Visio.Shape Dim i As Integer Dim shapeCount As Integer Set vsoShapes = Application.ActiveWindow.Page.Shapes For Each vsoShape In vsoShapes shapeCount = vsoShape.Shapes.Count If shapeCount > 1 Then i = 1 For i = 1 To shapeCount MsgBox vsoShape.Shapes(i).Text Next i End If Next