Діалогове вікно «Вставка функції» — це зручний інструмент Excel, який дає змогу вибрати функцію робочого аркуша VBA зі списку та запропонує ввести аргументи функції. Ваші спеціальні функції робочого аркуша також відображаються в діалоговому вікні Вставити функцію. Користувацькі функції відображаються в категорії Визначені користувачем.
Функціональні процедури, визначені за допомогою ключового слова Private, не відображаються в діалоговому вікні Вставити функцію. Тому, якщо ви пишете процедуру Function, яка призначена для використання лише іншими процедурами VBA (але не у формулах), вам слід оголосити функцію Private.
Відображення опису функції
Діалогове вікно Вставити функцію відображає опис кожної вбудованої функції. Але, як ви бачите, користувальницька функція відображає наступний текст як опис: Довідка недоступна.
За замовчуванням діалогове вікно Вставити функцію не містить опису користувацьких функцій.
Щоб відобразити змістовний опис користувацької функції в діалоговому вікні «Вставити функцію», виконайте кілька додаткових (не інтуїтивно зрозумілих) кроків:
Активуйте робочий аркуш у книзі, який містить спеціальну функцію.
Виберіть Розробник → Код → Макроси (або натисніть Alt+F8).
З'явиться діалогове вікно Макрос.
У полі Ім’я макросу введіть назву функції.
Зверніть увагу, що функція не відображається в списку макросів; ви повинні ввести ім'я.
Натисніть кнопку Параметри.
З’явиться діалогове вікно Параметри макросу.
У полі Опис введіть опис функції.
Натисніть кнопку OK.
Натисніть Скасувати.
Тепер діалогове вікно Вставити функцію відображає опис вашої функції.
Спеціальна функція тепер відображає опис.
Користувацькі функції за замовчуванням перераховані в категорії Визначені користувачем. Щоб додати функцію до іншої категорії, вам потрібно використовувати VBA. Цей оператор, коли виконується, додає функцію TopAvg до категорії Math & Trig (яка є категорією 3):
Application.MacroOptions Макрос:=“TopAvg”, Категорія:=3
Перевірте довідкову систему на наявність номерів інших категорій.
Вам потрібно виконати цей оператор лише один раз. Після виконання (і збереження книги) номер категорії буде присвоєно функції назавжди.
Додавання опису аргументів
Коли ви отримуєте доступ до вбудованої функції з діалогового вікна «Вставка функції», діалогове вікно «Аргументи функції» відображає описи аргументів.
За замовчуванням діалогове вікно «Аргументи функції» відображає описи аргументів функції лише для вбудованих функцій.
Раніше було неможливо додати опис аргументів. Але починаючи з Excel 2010, Microsoft нарешті впровадила цю функцію. Ви надаєте описи аргументів за допомогою методу MacroOptions. Ось приклад, який додає описи для аргументів, які використовуються функцією TopAvg:
Sub AddArgumentDescriptions()
Application.MacroOptions Макрос:=“TopAvg”, _
Описи аргументів:= _
Масив(“Діапазон, що містить значення”, _
«Кількість середніх значень»)
Кінець суб
Цю процедуру потрібно виконати лише один раз. Після його виконання описи аргументів зберігаються в книзі та пов’язуються з функцією.
Зверніть увагу, що описи аргументів відображаються як аргументи для функції масиву. Ви повинні використовувати функцію масиву, навіть якщо ви призначаєте опис функції, яка має лише один аргумент.