遍历可以分配宏的所有对象

时间:2013-10-09 13:07:08

标签: excel vba excel-vba

据我所知,在Excel中我们可以为多种对象分配宏:shapeForm ControlActiveX Control ......

我想编写一个VBA代码来执行以下操作,给出一个Excel文件:

  1. 浏览所有有资格分配给宏的现有对象
  2. 对于找到的每个对象,如果指定了宏,则打印其名称和宏的名称(或理想情况下也是正文)。
  3. 我希望这是详尽无遗的,有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

扩展位于ActiveSheet中的形状的@mehow答案以下代码将导致形状名称及其宏名称(如果有关联)。

Sub getShapeMacro()

    'to secure for unexpected...
    On Error Resume Next

    Dim SHP As Shape
    For Each SHP In ActiveSheet.Shapes
        Debug.Print SHP.Name, SHP.OnAction
    Next

End Sub