ТОП 10:

Процедура типу Sub і процедура типу Function



У мові VBA існує кілька типів процедур Sub i Function. Процедура типу Sub (процедура-підпрограма) — це частина програми, яка може виконуватися незалежно.

Синтаксис процедури типу Sub:

Sub Ім'я [(аргументи) ]

... <оператори>

End Sub

Ім'я — це унікальне ім'я процедури, складене відповідно до правил мови VBA. Список аргументів (необовязковий параметр в круглих дужках). Якщо аргументи у процедурі відсутні, то після імені ставиться порожня пара дужок.

Область дії кожної процедури визначається вказаним при її оголошенні ключовим словом — Private або Public. При цьому можна виділити три типи області дії процедур.

1. Процедура, оголошена з використанням ключового слова Private, доступна для всіх процедур в даному модулі і недоступна процедурам з інших модулів:

Private Sub Ім’я [(аргументи)]

<оператори>

End Sub

2. Процедура, оголошена з використанням ключового слова Public, доступна для всіх модулів усіх проектів:

Public Sub Ім’я [(аргументи) ]

<оператори>

End Sub

3. Якщо в процедурі наявний оператор Option Private Module, то процедури, оголошені з використанням ключового слова Public, будуть доступні всім програмам даного проекту і недоступні для інших.

Якщо вказати ключове слово Static при оголошені процедури, то всі змінні цієї процедури будуть статичні, тому значення цих змінних будуть зберігатися і після завершення виконання процедури.

Static Sub Ім’я [(аргументи)]

<оператори>

End Sub

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

Синтаксис процедури типу Function:

Function <ім'я функції> ([аргументи функції])

<оператори>

End Function

де:

• ім'я функції — значення, яке повертається у про­цедуру виклику після виконання процедури;

• аргументи функції —імена змінних, значення яких ви­користовуються функцією;

Останній оператор у тілі функції - оператор присвоєння імені функції обчисленого значення.

Приклад

Function TotalTax(Cost)

StateTax=Cost*0.05 ‘Податки штату 5%

CityTax= Cost*0.015 ‘Міські податки 1,5 %

TotalTax= StateTax + CityTax

End Function

Модулі не зберігаються у окремих файлах тому, щоб використовувати один і той самий модуль у різних проектах його слід експортувати у окремий файл з розширенням .bas вказівкою File→ Export File, вказати місце зберігання та ім’я, а потім імпортувати його у потрібний проект вказівкою File→Import File.

Для виконання деякої процедури вибрати команду меню редактора VBA Tools→ Macros і у діалоговому вікні Macros у списку Macro Name вибрати ім’я процедури та клацнути на кнопці Run (Выполнить) або просто натиснути клавішу <F5>.

Більш зручний запуск процедур здійснюється за допомогою кнопки на панелі швидкого доступу. Для її створення необхідно виконати наступні дії:

1. Клацнути вгорі над документом на кнопці Настройка панели быстрого доступа і у контекстному меню вибрати команду Другие команды…(Рис. 10)

Рис. 10. Діалогове вікно Настройка панели Рис.11. Вибір групи команд Макросы у діалоговому вікні быстрого доступа у додатку Word 2010 Параметры Word і створення нової кнопки

 

2. У діалоговому вікні Параметры Word у списку Выбрать команды из клацнути Макросы.

3. У списку зліва виділити потрібне ім’я і клацнути кнопку Добавить(Рис. 11). В результаті у список відібраних команд буде додано ім’я програми, а після натиснення на кнопку ОК на панелі швидкого доступу з’явиться нова кнопка.

4. Для того щоб змінити зображення на створеній кнопці необхідно у діалоговому вікні

Параметры Word клацнути Изменить і у діалоговому вікні Изменение кнопки вибрати готове зображення та закрити вікно.

Якщо при створенні макроса в Microsoft Word комбінацію клавіш для його запуска не було призначено, то це можна зробити пізніше, у діалоговому вікні Параметры Word. Для призначення комбінації клавіш макросу (чи VBA-програмі) у Word виконати наступні дії:

1. В меню Файл вибрати команду Параметры і у вікні Параметры Word перейти у розділ Настройка ленты. Клацнути на кнопці Настройка, розміщеній у нижній частині вікна.

2. У вікні Настройка клавиатуры вибрати у списку Категория значення Макросы, потім у списку Макросы вибрати ім’я програми (чи макросу).

3. У полі Новое сочетание клавиш ввести призначену для виклику програми комбінацію клавіш і клацнути на кнопці Назначить, а потім на кнопці Закрыть.

Тепер викликати вказану VBА- програму можна буде за допомогою призначеної комбінації клавіш.

Для визначення (або зміни) комбінації клавіш у середовищі Microsoft Excel, треба виконати наступні дії:

1. На стрічці перейти на вкладинку Вид і у групі Макросы вибрати в меню кнопки Макросы команду Макросы. Відкриється діалогове вікно Макрос. У списку Имя макроса вибрати програму і клацнути на кнопці Параметры.

2. У діалоговому вікні Параметры макроса ввести клавишу, яка у комбінації з <Ctrl> буде використовуватися для виклику вказаної VBA-програми. Для поверненя в програму клацнути на кнопці ОК.

Для видалення деякого модуля потрібно виділити його і виконати вказівку File→ Remove object_name.







Последнее изменение этой страницы: 2016-07-11; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 100.24.125.162 (0.004 с.)