В статьях 72.1, 72.2, 72.3 были рассмотрены расширенные функции для работы с датами. Но это ПОЛЬЗОВАТЕЛЬСКИЕ функции. И при их вызове пользователь увидит следующее:
или следующее:
Но можно в результате некоторых манипуляций увидеть и следующее:
И вот здесь мы можем воспользоваться функционалом метода MacroOptions объекта Application, что предоставляет возможность интегрировать пользовательские функции в стандартный набор функций Excel. Этот метод открывает следующие возможности:
- Добавление описания функции: С помощью MacroOptions можно предоставить подробное описание пользовательской функции. Это улучшает понимание её назначения и использования.
- Выбор категории функции: Метод позволяет определить категорию, в которой будет располагаться пользовательская функция. Это полезно для организации функций по тематическим группам, облегчая их поиск.
- Добавление описания аргументов функции: MacroOptions также предоставляет возможность внесения информации о каждом аргументе функции. Это улучшает документацию и содействует правильному использованию функции.
Полезный совет: еще одним преимуществом при использовании метода MacroOptions является возможность корректировки регистра символов в именах функций. Например, если создана функция "МояФункция", при вводе формулы =мояфцнкция(a) Excel автоматически корректирует её на = МояФункция(a). Это обеспечивает простой способ контроля опечаток в именах функций (если автоматического преобразования регистра не произошло, значит, имя функции введено неправильно).
В приведенном ниже примере представлена процедура, использующая метод MacroOptions для указания необходимой информации о пользовательских функциях (которые мы разобрали в трёх предыдущих статьях):
И что говорит нам эта процедура?
А говорит она следующее: что процедура SetMacroOptions в данном коде используется для добавления описаний к нескольким функциям и помещения их в категорию "Дата и время". Это удобно, когда пользователь работает с макросами в среде Microsoft Excel, поскольку описания и категории помогают лучше организовать функции и облегчают поиск нужных инструментов.
Давайте разберем, как тут крутятся шестерёнки:
- On Error Resume Next: Эта строка указывает на продолжение выполнения кода в случае возникновения ошибки, вместо прерывания выполнения. Это может быть полезным при установке описаний для макросов, чтобы код продолжал работать, даже если какие-то из них не могут быть установлены.
- With Application: Этот блок используется для компактного обращения к объекту Application, который представляет собой главный объект приложения (в данном случае, Microsoft Excel).
- MacroOptions macro:=...: Это метод для добавления описаний к макросам. Каждый вызов этого метода добавляет описание для конкретного макроса.
- macro: Имя макроса, к которому добавляется описание.
- Description: Текст описания макроса.
- Category: Категория, в которую помещается макрос (в данном случае категория – 2, это категория "Дата и время").
Указание категории функций рассмотрим в следующей статье.
Пример кусочка макроса, описанного выше в скриншоте:
Этот вызов добавляет описание для макроса АДАТА с указанным текстом и помещает его в категорию с номером 2 ("Дата и время").
Итак (если вы читали статьи 72.1, 72.2, 72.3), то уже знаете, что в нашем модуле с девятью функциями, появилась ещё одна процедура.
Важное замечание. Поддержка описания аргументов появилась в Excel 2010. Если книга, в которой определена соответствующая функция, будет открыта в более ранней версии Excel, описания аргументов исчезнут.
Процедура SetMacroOptions вызывается только один раз. После ее вызова информация, связанная с функцией или функциями (если их несколько, как в нашем случае), сохраняется в рабочей книге.