0

我有这个简单的地址类,只有:

  Public street as String
  Public number as Integer

然后,我在一个名为“mdl1”的模块中创建一个实例,并在同一个模块函数上使用它:

Public objectAddress as Address

Public Function f1() As String
  Set objectAddress = New Address
  objectAddress = "5th street" 'this works fine

  If Not isNothing() Then
    f1 = objectAddress.street
  Else
    f1 = vbNullString
  End If

End Function

Public Function isNothing() As Boolean

'When entering here, the objectAddres is ALWAYS Nothing, even though i just assigned a value to the street property...

  If objectAddress is Nothing then
    isNothing = True
  Else
    isNothing = False
  End If
End Function

我已经在f1()函数上为 objectAdrress.street 分配了一个值,但是当它进入 ìsNothing()` 函数时,objectAddress 又是 Nothing。

当控件返回到f1函数时,对象返回具有值并且街道属性仍然具有我分配给它的值......

那么,模块“属性”不应该表现得像一个类吗?或者模块内不存在全局/本地范围?

已解决: 即使没有人明白问题的重点,但问题是我正在创建一个与全局对象同名的本地对象,这就是为什么它总是Nothing在进入另一个函数时出现。

4

0 回答 0