Я хочу сделать локальную версию IsEmpty()
в классе, как это:Как перегрузить функции из стандартной библиотеки VBA, например IsEmpty()?
Public Dict As Dictionary
Public Function isEmpty(columnName As Variant) As Boolean
isEmpty = IsEmpty(Dict(columnName))
End Function
Это для сокрытия информации, так что я могу назвать
classInstance.isEmpty("someField")
вместо
isEmpty(classInstance.Dict("someField"))
и, следовательно, не выставлять внутреннюю структуру данных класса.
Но проблема заключается в том, что версия isEmpty()
, что я объявил, кажется, перекрывая любые ссылки на версию библиотеки VBA из IsEmpty()
, потому что это генерируя Out of stack
ошибки и сбой Excel. Я предполагаю, что это связано с тем, что вызов isEmpty = IsEmpty(...)
вызывает бесконечную рекурсию.
Есть ли способ, которым я могу прямо ссылаться на стандартную версию IsEmpty()
, которую я хотел бы назвать здесь?