У меня есть шаблон макроса рабочей книги Excel (.xltm), в котором используется лист VBA UDF;ничего большого или сложного.Функции объявлены как общедоступные и сохранены в модуле в той же книге.Шаблон использовался годами, создавая рабочие книги (.xlsm), в которых функции всегда работали безупречно.Теперь, открыв шаблон, чтобы сделать некоторые обновления, я нашел уродливое #NAME!ошибки в каждой ячейке, содержащей один из моих UDF;если я пытаюсь вставить функцию в ячейку, я больше не нахожу свои функции в списке Excel.Единственное, что изменилось в моем Excel - это версия, теперь 2019 64-битная;шаблон был создан в версии 2016 года (32-битная, но работала и с 64-битной), и, повторяю, все всегда работало идеально.Может быть, гуру Excel может дать мне подсказку для решения этой странной проблемы?
Отредактируйте пример по запросу:
Как я уже сказал, мои функции очень просты и не вызывают код APIНапример, у меня есть эти два:
Const MinValue = 0.00001
Const NullValue = -999
Public Function IsZero(r As Range) As Boolean
'check the cell value, and returns True if the value is <= MinValue
If IsEmpty(r.Cells(1, 1)) Then
IsZero = True
ElseIf IsNumeric(r.Cells(1, 1)) Then
IsZero = (r.Cells(1, 1) <= Zero)
End If
End Function
Public Function Zero() As Double
' Simply returns the MinValue value.
Zero = MinValue
End Function