获取所选分组形状的名称

时间:2015-09-15 10:20:05

标签: excel vba excel-vba

我创建了两个椭圆形的对象,默认情况下命名为" Oval 1"和"椭圆形2"。我将它们分组并命名为" MergedOvals"。我为新形成的组形状分配了一个宏。

宏有代码,当我点击它时会给出形状对象的名称:

Sub ClickedShape()
MsgBox ActiveSheet.Shapes(Application.Caller).Name & " Clicked"
End Sub

问题是,当我点击分组的形状时,我希望MsgBox显示" MergedOvals Clicked",而是原来的" Oval 1"或"椭圆形2"显示的名称取决于光标与椭圆的接近程度。

有没有办法显示分组名称?

1 个答案:

答案 0 :(得分:0)

如上所述Here,使用对象以便您可以访问intellisense。通过这种方式,您可以发现您拥有的Object Properties所有内容。

这是你在尝试的吗?

Sub ClickedShape()
    Dim shp As Shape

    Set shp = ActiveSheet.Shapes(Application.Caller)

    MsgBox shp.ParentGroup.Name & " Clicked"
End Sub