相同属性的属性过程的定义不一致

同一属性的 Property GetProperty LetProperty Set过程的参数必须完全匹配,只不过 Property Let 具有一个额外的参数,其类型必须与相应 Property Get 的返回类型匹配,而属性集具有比相应 Property Get 多一个参数,其类型为 Variant对象名或对象库中指定的对象库类型。 此错误的原因及解决方案如下:

  • Property Get 过程的参数个数没有比匹配的 Property LetProperty Set 过程的参数少一个。 为 Property LetProperty Set 添加一个参数,或适当地从 Property Get 中删除一个参数。

  • Property Get 的参数类型必须完全匹配 Property LetProperty Set 的相应参数,除 Property Set 额外参数以外。 请修改相应过程定义中的参数声明以使它们适当匹配。

  • Property Let 的额外参数的参数类型必须匹配相应 Property Get 过程的返回类型。 请修改 Property Let 中的额外参数声明或相应 Property Get 的返回类型以使它们适当匹配。

  • Property Set 的额外参数的参数类型可以与相应 Property Get 的返回类型不同,但它必须是 VariantObject名称或有效对象库类型。

    确保 Property Set 过程的额外参数是 VariantObject 、类名称或对象库类型。

  • 您使用 OptionalParamArray 参数定义了一个 Property 过程。 不允许在 Property 过程中使用 ParamArrayOptional 参数。 请重新定义过程,不要使用这些关键字

有关其他信息,选择有问题的项并按 F1(在 Windows 中)或 HELP(在 Macintosh 上)。

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。