Диалоговият прозорец Вмъкване на функция е удобен инструмент на Excel, който ви позволява да изберете функция на VBA работен лист от списък и ви подканва за аргументите на функцията. Вашите персонализирани функции на работен лист също се появяват в диалоговия прозорец Вмъкване на функция. Персонализираните функции се появяват в категорията User Defined.
Функционалните процедури, дефинирани с ключовата дума Private, не се появяват в диалоговия прозорец Вмъкване на функция. Следователно, ако напишете процедура Function, която е проектирана да се използва само от други VBA процедури (но не във формули), трябва да декларирате функцията като Private.
Показване на описанието на функцията
Диалоговият прозорец Вмъкване на функция показва описание на всяка вградена функция. Но както можете да видите, персонализирана функция показва следния текст като свое описание: Няма налична помощ.
По подразбиране диалоговият прозорец Вмъкване на функция не предоставя описание за персонализирани функции.
За да покажете смислено описание на вашата персонализирана функция в диалоговия прозорец Вмъкване на функция, изпълнете няколко допълнителни (неинтуитивни) стъпки:
Активирайте работен лист в работната книга, който съдържа персонализираната функция.
Изберете Разработчик → Код → Макроси (или натиснете Alt+F8).
Появява се диалоговият прозорец Macro.
В полето Име на макроса въведете името на функцията.
Имайте предвид, че функцията не се появява в списъка с макроси; трябва да напишете името.
Щракнете върху бутона Опции.
Появява се диалоговият прозорец Опции на макроса.
В полето Описание въведете описание на функцията.
Щракнете върху OK.
Щракнете върху Отказ.
Сега диалоговият прозорец Вмъкване на функция показва описанието на вашата функция.
Персонализираната функция сега показва описание.
Персонализираните функции по подразбиране са изброени в категорията Дефинирани от потребителя. За да добавите функция към друга категория, трябва да използвате VBA. Това изявление, когато се изпълни, добавя функцията TopAvg към категорията Math & Trig (която е категория 3):
Application.MacroOptions Macro:=“TopAvg”, Категория:=3
Проверете системата за помощ за други номера на категории.
Трябва да изпълните този израз само веднъж. След като го изпълните (и запишете работната книга), номерът на категорията се присвоява постоянно на функцията.
Добавяне на описания на аргументи
Когато имате достъп до вградена функция от диалоговия прозорец Вмъкване на функция, диалоговият прозорец Аргументи на функцията показва описания на аргументите.
По подразбиране диалоговият прозорец Аргументи на функцията показва описания на аргументите на функциите само за вградени функции.
В миналото не беше възможно да се добавят описания на аргументи. Но започвайки с Excel 2010, Microsoft най-накрая внедри тази функция. Вие предоставяте описания на аргументи, като използвате метода MacroOptions. Ето пример, който добавя описания за аргументите, използвани от функцията TopAvg:
Sub AddArgumentDescriptions()
Application.MacroOptions Macro:=“TopAvg”, _
Описания на аргументи:= _
Масив(„Обхват, който съдържа стойностите“, _
„Брой на средните стойности“)
Край под
Трябва да изпълните тази процедура само веднъж. След като го изпълните, описанията на аргументите се съхраняват в работната книга и са свързани с функцията.
Забележете, че описанията на аргументите се появяват като аргументи за функцията Array. Трябва да използвате функцията Array, дори ако присвоявате описание на функция, която има само един аргумент.