Как да изпълнявате VBA функционални процедури в Excel 2016

При програмирането на VBA функцията връща стойност. Можете да изпълнявате функциите процедури и да извикате функцията в Excel 2016. Функциите, за разлика от подпроцедурите, могат да се изпълняват само по два начина:

  • Чрез извикване на функцията от друга процедура под или функция

  • Чрез използване на функцията във формула на работен лист

Опитайте тази проста функция. Въведете го във VBA модул:

Функция CubeRoot(число)
  CubeRoot = число ^ (1/3)
Крайна функция

Тази функция е доста слаба; той просто изчислява кубичния корен на числото, предадено му като негов аргумент. Това обаче осигурява отправна точка за разбиране на функциите. Той също така илюстрира важна концепция за функциите: как да върнете стойността. (Спомняте си, че функцията връща стойност, нали?)

Забележете, че единственият ред код, който съставя тази функция на процедурата, извършва изчисление. Резултатът от математиката (число на степен 1/3) се присвоява на променливата CubeRoot. Неслучайно CubeRoot е и името на функцията. За да кажете на функцията каква стойност да върне, присвоявате тази стойност на името на функцията.

Извикване на функцията от подпроцедура

Тъй като не можете да изпълните функция директно, трябва да я извикате от друга процедура. Въведете следната проста процедура в същия VBA модул, който съдържа функцията CubeRoot:

Sub CallerSub()
  Отговор = CubeRoot(125)
  MsgBox Ans
Край под

Когато изпълните процедурата CallerSub, Excel показва поле за съобщение, което съдържа стойността на променливата Ans, която е 5.

Ето какво се случва: Функцията CubeRoot се изпълнява и получава аргумент 125. Изчислението се извършва от кода на функцията (използвайки стойността, подадена като аргумент), а върнатата стойност на функцията се присвоява на променливата Ans. След това функцията MsgBox показва стойността на променливата Ans.

Опитайте да промените аргумента, който е предаден на функцията CubeRoot и стартирайте отново макроса CallerSub. Работи точно както трябва - ако приемем, че давате на функцията валиден аргумент (положително число).

Между другото, процедурата CallerSub може да бъде малко опростена. Променливата Ans всъщност не е необходима, освен ако вашият код не използва тази променлива по-късно. Можете да използвате това единично изявление, за да получите същия резултат:

  MsgBox CubeRoot(125)

Извикване на функция от формула на работен лист

Сега е време да извикате тази процедура на VBA функция от формула на работен лист. Активирайте работен лист в същата работна книга, която съдържа дефиницията на функцията CubeRoot. След това въведете следната формула във всяка клетка:

=Куб корен(1728)

Клетката показва 12, което наистина е кубичният корен от 1728.

Както може да очаквате, можете да използвате препратка към клетка като аргумент за функцията CubeRoot. Например, ако клетка A1 съдържа стойност, можете да въведете =CubeRoot(A1) . В този случай функцията връща числото, получено чрез изчисляване на кубичния корен на стойността в A1.

Можете да използвате тази функция произволен брой пъти в работния лист. Подобно на вградените функции на Excel, вашите персонализирани функции се появяват в диалоговия прозорец Вмъкване на функция. Щракнете върху бутона Вмъкване на функция в лентата с инструменти и изберете категорията Дефинирани от потребителя. Диалоговият прозорец Вмъкване на функция изброява вашата собствена функция.

Как да изпълнявате VBA функционални процедури в Excel 2016

Функцията CubeRoot се появява в категорията User Defined на диалоговия прозорец Insert Function.

Ако искате диалоговият прозорец Вмъкване на функция да показва описание на функцията, изпълнете следните стъпки:

Изберете Разработчик → Код → Макроси.

Excel показва диалоговия прозорец Macro, но CubeRoot не се появява в списъка. (CubeRoot е функционална процедура и този списък показва само подпроцедури.) Не се притеснявайте.

Въведете думата CubeRoot в полето Име на макроса.

Щракнете върху бутона Опции.

Въведете описание на функцията в полето Описание.

Щракнете върху OK, за да затворите диалоговия прозорец Опции на макроса.

Затворете диалоговия прозорец Макрос, като щракнете върху бутона Отказ.

Този описателен текст сега се появява в диалоговия прозорец Вмъкване на функция.

Вижте функцията CubeRoot, която се използва във формулите на работния лист.

Как да изпълнявате VBA функционални процедури в Excel 2016

Използване на функцията CubeRoot във формули.


Как да блокирате Microsoft Word да отваря файлове в режим само за четене в Windows

Как да блокирате Microsoft Word да отваря файлове в режим само за четене в Windows

Как да блокирам Microsoft Word да отваря файлове в режим само за четене в Windows Microsoft Word отваря файлове в режим само за четене, което прави невъзможно редактирането им? Не се притеснявайте, методите са по-долу

Как да коригирате неправилно отпечатване на документи на Microsoft Word

Как да коригирате неправилно отпечатване на документи на Microsoft Word

Как да коригирате грешки при отпечатването на неправилни документи на Microsoft Word Грешките при отпечатването на документи на Word с променени шрифтове, разхвърляни абзаци, липсващ текст или изгубено съдържание са доста чести. Въпреки това недейте

Изтрийте рисунки с писалка и маркер на вашите слайдове на PowerPoint

Изтрийте рисунки с писалка и маркер на вашите слайдове на PowerPoint

Ако сте използвали писалката или маркера, за да рисувате върху слайдовете на PowerPoint по време на презентация, можете да запазите чертежите за следващата презентация или да ги изтриете, така че следващия път, когато го покажете, да започнете с чисти слайдове на PowerPoint. Следвайте тези инструкции, за да изтриете чертежи с писалка и маркери: Изтриване на линии една в […]

Съдържание на библиотеката за стилове в SharePoint 2010

Съдържание на библиотеката за стилове в SharePoint 2010

Библиотеката със стилове съдържа CSS файлове, файлове с разширяем език на стиловия език (XSL) и изображения, използвани от предварително дефинирани главни страници, оформления на страници и контроли в SharePoint 2010. За да намерите CSS файлове в библиотеката със стилове на сайт за публикуване: Изберете Действия на сайта→Преглед Цялото съдържание на сайта. Появява се съдържанието на сайта. Библиотеката Style се намира в […]

Форматирайте числата в хиляди и милиони в отчети на Excel

Форматирайте числата в хиляди и милиони в отчети на Excel

Не затрупвайте аудиторията си с огромни числа. В Microsoft Excel можете да подобрите четливостта на вашите табла за управление и отчети, като форматирате числата си така, че да се показват в хиляди или милиони.

Как да споделяте и следвате сайтове на SharePoint

Как да споделяте и следвате сайтове на SharePoint

Научете как да използвате инструменти за социални мрежи на SharePoint, които позволяват на индивиди и групи да общуват, да си сътрудничат, споделят и да се свързват.

Как да конвертирате дати в юлиански формати в Excel

Как да конвертирате дати в юлиански формати в Excel

Юлианските дати често се използват в производствени среди като времеви печат и бърза справка за партиден номер. Този тип кодиране на дата позволява на търговците на дребно, потребителите и обслужващите агенти да идентифицират кога е произведен продуктът и по този начин възрастта на продукта. Юлианските дати се използват и в програмирането, военните и астрономията. Различно […]

Как да създадете уеб приложение на Access

Как да създадете уеб приложение на Access

Можете да създадете уеб приложение в Access 2016. И така, какво всъщност е уеб приложение? Е, уеб означава, че е онлайн, а приложението е просто съкращение от „приложение“. Персонализирано уеб приложение е онлайн приложение за база данни, достъпно от облака с помощта на браузър. Вие създавате и поддържате уеб приложението в настолната версия […]

Лента за бързо стартиране в SharePoint 2010

Лента за бързо стартиране в SharePoint 2010

Повечето страници в SharePoint 2010 показват списък с връзки за навигация в лентата за бързо стартиране в лявата част на страницата. Лентата за бързо стартиране показва връзки към представено съдържание на сайта, като списъци, библиотеки, сайтове и страници за публикуване. Лентата за бързо стартиране включва две много важни връзки: Връзка към цялото съдържание на сайта: […]

Какво означават съобщенията за грешка на Solver в Excel?

Какво означават съобщенията за грешка на Solver в Excel?

За прости проблеми Solver в Excel обикновено бързо намира оптималните стойности на променливата Solver за целевата функция. Но в някои случаи Solver има проблеми с намирането на стойностите на променливата Solver, които оптимизират целевата функция. В тези случаи Solver обикновено показва съобщение или съобщение за грешка, което описва или обсъжда проблема, който […]