VBA一个Object的实例

时间:2014-01-30 16:31:20

标签: excel vba excel-vba instance

以下是关于VBA的问题

我只是无法清楚地知道我搜索过VBA书籍的对象的实例是什么,我还没有找到明确的答案。短语如:

  • Word的一个实例
  • 类模块的实例
  • 该过程将对象Employee声明为clsEmployee的新实例。

对我来说,一个对象我的意思是如果一个范围(“A1”)是Set那么可能会改变的方式以及我们如何判断我们是否有10个循环迭代来改变Range A1对象的值来自另一个实例的实例?

我甚至听说过变量的实例!

感谢您关注我的问题

2 个答案:

答案 0 :(得分:8)

“实例是任何类的特定实现......”Instance (computer science) on Wikipedia

Sub Example()
    Dim Word1 As Word.Application
    Dim Word2 As Word.Application
    Dim Word3 As Word.Application

    'Instantiate the first instance of a Word application
    Set Word1 = New Word.Application

    'Instantiate the second instance of a Word application
    Set Word2 = New Word.Application

    'Point our third Word object variable to the existing instance created above
    Set Word3 = Word1

End Sub

以上代码包含从单个类派生的三个对象变量Word1Word2Word3)({ {1}})代表两个不同的实例Word.ApplicationWord1指向同一个实例,Word3指向第二个实例。


请注意,行Word2不会将Set Word3 = Word1对象实例的内容复制到Word1Word3实际上只包含指向对象所在内存中某个位置的指针。

Word1表示将内存指针从变量Set Word3 = Word1复制到变量Word1。因此,您对Word3对象实例所做的任何更改都将反映在Word1对象实例中......因为它们都指向同一个实例

以示例形式:

Word3

答案 1 :(得分:1)

每次在代码中提及对象或变量中的任何对象时,都必须对其进行实例化。

这意味着您必须创建一个实例(存在变量对象)。

你可以每次打电话给Dim x as something你没有创造出什么东西,你正在创造一个新的事物实例,一个全新的实体,它以你指定的任何形式呈现

通过说Dim strSample As String,您正在创建一个对象或变量的新实例,该实例采用属性和方法String

在其他作品中,实例是对象或变量的存在,每当你有一个对象或它存在的变量时,为了存在它就有它自己的实例。

您正在创建一个新对象。或实例化

你是一个人的实例,你是一个鸟的实例。你并不是唯一一个有过人生的人。