我有一个非常简单的类定义。 Class Sheetwriter的定义如下:
Option Explicit
'Works off of the ActiveCell
'Helps you write data into the cells
Private pCornerCell As String
Public Property Get CornerCell()
CornerCell = pCornerCell
End Property
Public Property Let CornerCell(Value As String)
pCornerCell = Value
Range(Value).Select
End Property
我收到一个我不明白的编译错误。 相同属性的属性过程的定义不一致,或者属性过程具有可选参数。 我做错了什么?
答案 0 :(得分:2)
Public Property Get CornerCell()
由于未指定返回类型,因此返回隐式Variant
。
Public Property Get CornerCell() As String
返回编译器在String
成员中看到的Property Let
,并修复了您的问题。
FWIW,Range(Value).Select
声明并不属于那里,并且您不希望在活动单元格上工作并撒上{{1} }和Select
声明无处不在。
有关避免这种情况的一些提示,请参阅How to avoid using Select in Excel VBA macros。