使用Date对象的set属性的VBA编译错误

Reg*_*ldJ 3 vba compiler-errors

我是VBA代码的新手,当我尝试在我创建的类中运行此代码时,我遇到了编译错误.

Private pWorkDate As Date

Public Property Set WorkDate(value As Date)
Set pWorkDate = value
End Property

Public Property Get WorkDate() As Date
Set WorkDate = pWorkDate
End Property
Run Code Online (Sandbox Code Playgroud)

这是我收到的错误消息:

相同属性的属性过程的定义不一致,或者属性过程具有可选参数,ParamArray或无效的Set final参数

请原谅我的无知,但我一直在寻找,似乎无法找到我做错了什么.

Ale*_* K. 5

它不喜欢你使用set的对象引用的尝试,类型的变量Date永远不会是(它的原始类型(如integer)不是对象类型(如你的类)).

更改为Let&不使用Set:

Public Property Let WorkDate(value As Date)
   pWorkDate = value
End Property

Public Property Get WorkDate() As Date
   WorkDate = pWorkDate
End Property
Run Code Online (Sandbox Code Playgroud)