一度だけセットできるプロパティ

Class OneSet
 Dim Already_
 Dim Value_

 Sub Class_Initialize
  Already_ = False
 End Sub

 Property Get Value
  Value = Value_
 End Property

 Property Let Value(pValue)
  If Already_ Then
   Err.Raise 1
  End If
  Value_ = pValue
  Already_ = True
 End Property
End Class