在形状中获取形状组名称

当我通过“Full_Banner ”GroupItems循环时,我的代码返回在红色方块下面的每个项目的名称。

在这里输入图像说明

我想要的是我的代码返回蓝色方块中每个项目的名称(见下文)。 我怎么能这样做?

在这里输入图像说明

Sub Get_Shape_Name() For Each element In ActiveSheet.Shapes("Full_Banner").GroupItems MsgBox element.Name Next End Sub 

我不知道任何方法来访问子组的名称。 作为解决方法,您可以取消组合形状,列出所有组项目并将形状分组回去:

 Sub Get_Shape_Name() Dim aShape As Shape Dim rShape As ShapeRange Const sName As String = "Full_Banner" Set rShape = ActiveSheet.Shapes(sName).Ungroup For Each aShape In rShape If aShape.ShapeStyle = msoShapeMixed Then MsgBox aShape.Name End If Next rShape.Group.Name = sName End Sub