我得到的是我只能假设this error(错误消息在Excel中更长,但在其他方面与MSDN上描述的问题相对应)在以下代码中,我不明白为什么
use RedBeanPHP\R;
它强调了这个特定的Private cLocation As String
' Location
Public Property Get Location() As String
Location = cLocation
End Property
Public Property Let Location(Value As String, Value1 As String)
If Value <> "" And Len(Value) > 2 Then
cLocation = Value
Else
cLocation = Value1
End If
cLocation = Test.scrubLocation(cLocation, Me.NewZipcode)
End Property
程序。
Property Get过程的参数数量不少一个 比匹配Property Let或的参数个数 属性集程序。向Property Let或Property添加参数 根据需要在Property Get中设置或删除参数。
我认为这不可能 - Let
的参数比Get
少2。此外,向Let
添加参数不会解决任何问题。
属性Get的参数类型必须与 Property Let或Property Set的相应参数,除了 额外的Property Set参数。修改参数声明 相应的程序定义,因此它们是适当的 匹配。
Property Let的额外参数的参数类型必须 匹配相应的Property Get过程的返回类型。 修改Property Let或中的额外参数声明 相应属性Get的返回类型是这样的 适当匹配。
一切都是字符串,所以这也应该没问题?
您使用Optional或ParamArray定义了一个Property过程 参数。 ParamArray和可选参数不允许使用 物业程序。不使用这些程序重新定义程序 关键字。
不。
我还确保我没有在其他任何地方设置Get
。在整个项目中,没有其他程序对cLocation
进行修改而不是cLocation
,如上所示。
我在做Let
错了吗?我的印象是我可以从this answer以这种方式完成。
答案 0 :(得分:1)
您的Get
过程也必须具有名为Value
的String参数:
Public Property Get Location(Value As String) As String
Location = cLocation
End Property