工作表对象声明

Worksheet object declaration

我一直使用语法 Dim w as Worksheet 声明工作表对象,但最近我遇到了一些使用 Dim w as Excel.Worksheet 的代码。

我检查了对象浏览器,它指出 Worksheet 是 Excel 的成员。所以我的问题是为什么 Dim ws as Worksheet 也有效?

我怀疑 Excel 对象可能不需要 Excel 前缀,但到目前为止,我还没有遇到过这样的明确声明。

在 Excel VBA 中,它们在所有意图和目的上都是一样的。 Excel 是工作表的 'parent',但它是在 Excel VBA 工作区中隐式定义的。一般来说,在 Excel VBA 内工作时不需要它,因为它是默认值。

但是,如果您使用 Word VBA 并导入了 Microsoft Excel x.x 对象库,则需要指定 Excel.Worksheet,因为 Word 应用程序模型将是默认值,它不包含工作表类型。