是否有地方可以轻松找到 VBA for Excel 2013 的对象模型层次结构和 API 类型?
我正在查看 MSDN URL http://msdn.microsoft.com/en-us/library/office/ff841127(v=office.15).aspx
但这似乎令人困惑。
示例:
如果我在写
Selection.Interior.ColorIndex = -4142
我想要一个 API(在线或离线)来理解从 Selection
开始的对象模型,并以我的方式工作(和探索)ColorIndex。还可以阅读相关文档。
我认为唯一可能的方法是拥有像 Java Docs 这样的结构化文档。
任何引用/提示都会有帮助。
System Info:
MS Excel 2013
VBA
Windows 8, 64 bit
更新: 在寻找答案时,我从 http://msdn.microsoft.com/en-us/library/aa141044.aspx 得到了下图
更新: 基于以下用户 Oliver 的输入: 我的办公室帮助似乎不起作用。
最佳答案
通常,如果变量或其他标识符可以解析为特定类型,那么 Intellisense 将向您显示该类型的成员。例如:
Application.
将显示成员列表。
Selection
是一种特殊情况,因为虽然当前选定的项目通常是一系列单元格,但它也可能是其他内容 - 例如图表工作表的一部分。
您可以通过添加监视(调试 -> 添加监视...)来发现 Selection
引用的对象的基础类型。在表达式框中键入 Selection
,并将上下文设置为(所有过程) 和(所有模块)(如果尚未这样设置)。
在Watches窗口中,您将看到 Selection
引用的对象的实际类型,并且您可以展开 +
以查看其属性。如果类型为 Object/Range
(意味着表达式的类型为 Object
并且表达式引用的对象的类型为 Range
),则属性之一将为 Interior
。如果查看 Interior
的类型列,您将看到 Interior/Interior
,因为 Interior
属性的类型确实是 Interior
类型。
如果您在代码中键入以下内容:
ActiveCell.
Intellisense 将向您显示成员列表,包括 Interior
属性,因为 ActiveCell
属性的类型是 Range
类型。
其他一些用于研究对象模型的强大工具:
- 对象浏览器( View -> 对象浏览器)根据所使用的库,向您显示可用于您的项目的类型列表。项目引用(可以在工具 -> 引用...中查看/更改)。选择类型后,您将看到该类型的成员列表。您可以按库和/或名称过滤类型。
<globals>
类型中的成员可以在没有任何对象引用的情况下使用 -Interior
需要使用一些Range
对象,但Selection
可以单独使用。 - 立即窗口(查看 -> 立即窗口)可让您计算表达式(前缀为
?
- 例如?ActiveWorkbook.Sheets.Count
)并运行代码到位(例如ActiveWorkbook.Save
)
关于excel - VBA 对象模型引用文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25526335/