Що таке в excel функція function і процедура sub - трюки і прийоми в microsoft excel

В Excel VBA-макроси існують в двох різних варіантах: процедури Sub і процедури-функції Function. У цій статті ви дізнаєтеся, чим вони відрізняються.

процедури Sub

Ви можете думати про процедуру Sub як про нову команду. У вашій книзі Excel може бути будь-яку кількість процедур Sub. На рис. 206.1 показана проста процедура Sub. Якщо виконати цей код, він переключить режим відображення розривів сторінок для активного листа.

Що таке в excel функція function і процедура sub - трюки і прийоми в microsoft excel

Мал. 206.1. Проста, але корисна процедура VBA

Процедури Sub завжди починаються з ключового слова Sub. імені макросу і пари круглих дужок. Вираз End Sub означає кінець процедури. Рядки між цими ключовими словом і виразом містять код процедури.

Ви виконуєте процедури Sub декількома способами. Наприклад, можна натиснути Alt + F8. а потім вибрати макрос у вікні Macros. Інші способи виконання процедур Sub описані в статті «Як виконуються макроси в Excel«.

Якщо ви записуєте макрос, це завжди процедура Sub.

функції VBA

Другим типом процедур VBA є процедури-функції Function. які завжди повертають одне значення (так само, як і функція листа завжди повертає одне значення). Процедура-функція VBA може бути виконана іншими процедурами VBA або використана в формулах листа, як і будь-яка інша вбудована функція Excel.

Що таке в excel функція function і процедура sub - трюки і прийоми в microsoft excel

Мал. 206.2. Процедура-функція Function, яка повертає ім'я користувача

На рис. 206.2 ви можете бачити призначену для користувача функцію, названу User. Вона просто повертає ім'я користувача (яке зазначено у вікні Параметри Excel). Процедура-функція виглядає так само, як і процедура Sub. Тільки зверніть увагу, що процедура-функція починається з ключового слова Function. а закінчується оператором End Function.

Ось приклад формули листа, яка використовує цю функцію: = PERSONAL.XLSB! User (). Ця формула передбачає, що функція User визначена у вашому особистому книзі макросів. Якщо функція визначена в книзі, що містить формулу, можна опустити посилання на файл і використовувати наступну формулу: = User ()