使用对象浏览器

时间:2015-09-15 09:39:00

标签: excel vba excel-vba object methods

我一直在研究VBA中对象属性和方法的底层结构。我刚刚读到每个对象的所有属性和方法都列在"对象浏览器"在开发人员框中。

我被提示查看这个的原因是我使用的对象浏览器中没有列出的方法。我用过:

Sheets("Front face").Shapes("Drop Down 12").ControlFormat

这使我可以使用.List来更改Shape。但是.ControlFormat不是对象浏览器中列出的属性/方法。

任何人都能解释一下吗?

2 个答案:

答案 0 :(得分:7)

enter image description here

它出现在我的 - 也许你正在寻找" Shapes"这是一个集合,而不是" Shape"哪个是实际的对象?

<强> 详情:

ShapesShape个对象的集合 - 因此Shapes具有与Collection对象相关的属性和方法。该集合中的每个项目都是Shape对象,其中包含Shape

的属性和方法

答案 1 :(得分:5)

除了MacroMan解释的内容之外,这里应该始终遵循(作为一种习惯)

使用对象进行智能感知正常工作

参见此示例

Sub Sample()
    Dim ws As Worksheet
    Dim Shp As Shape

    Set ws = Sheets("Front face")
    Set Shp = ws.Shapes("Drop Down 12")
End Sub

现在,如果你Shp.,你将获得.ControlFormat财产。

另一个例子

当您想要访问工作表的.Range时,如果您输入Activesheet.,则无法获得该信息。对于intellisense,再次使用对象。

enter image description here