Это немного странное поведение Excel.Возвращаемое число является внутренним идентификатором функции UDF, и, вводя имя функции без скобок, вы заставляете его обрабатывать как именованный диапазон, а не функцию.Если вы хотите вызвать функцию без аргументов, используйте:
=MyUDF()
... если вы наберете =MyUDF
, тогда вы просите Excel разыменовать имя функции так же, как это было быразыменование =A1
к значению в ячейке A1
или =MyNamedRange
к любому указанному именованному диапазону.
Я не думаю, что есть какое-то практическое применение наблюдаемому вами поведению, но оно, безусловноне приближается к вашему коду, чтобы получить возвращаемое значение, так что не беспокойтесь, что вы не сделали ничего плохого!