Зараз обговорюють

"Тобто є ряд завдань, які взагалі без рекурсії не наважуються."  - це як розуміти? Перефразуй, будь ласка. 

виправив, йшлося про те що деякі завдання можна вирішити лише при використанні рекурсії

Спасибі дуже корисна стаття

А ще щось планується подібного найближчим часом?


Дякую за підтримку, радий що Вам сподобалось!

Так маю вже майже дороблений проект по управлінні Audio файлом, на заміну стандартним клавішам управління HTML5, але ще не встиг відтестувати програвання файлів з інтернету, поки лише локально працює

Надіюсь найближчим часом дороблю й закину

Рахунки

webmoneyeur - E385818210641
usd - Z304643423050
uah - U354026817492
rub - R301704373231easypay80002677bitcoin1F5HRGroUtEQW9HBNbeew8iKh5KQ8vJxzw

Зворотній зв'язок

Для покращення роботи сайту надсилайте свої зауваження:
mailЗауваження
mailПропозиція

Статистика

UkrNET - поисково-информационный ресурс

VBA : Процедури і функції

Що таке процедура?

Процедура (Sub) – це послідовність операторів VBA, розташована в модулі VBA, являє собою невеликий шматок коду, який ви пишете, щоб зробити конкретну роботу. Модуль може включати будь-яку кількість процедур.

Процедура може мати будь-яку довжину, але простіше написати кілька коротких процедур, кожна з яких виконує своє завдання, а потім створити головну процедуру, яка викликає менші процедури. Подібний підхід спростить подальше управління програмою.

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

Створення процедури

Створення процедури можна використати 2 методи:

- Відкрити вікно VBE (Visual Basic Editor) комбінацією клавіш Alt + F11, або за допомогою вбудованого елемента керування стрічки Розробник -> Visual Basic для Excel, Word, або Створити > Модуль для Access. У відкритому вікні виконати наступні дії для створення нового модуля Insert -> Module

- Скористатись командою RecordMacro (Записати макрос), що знаходиться в лівій нижній частині робочої області

або за допомогою вбудованого елемента керування стрічки Розробник -> Записати макрос для Excel, Word. Вам потрібно буде обрати як буде називатись модуль в який будуть записані наступні виконані дії, а також можна вибрати комбінацію клавіш за якої буде запускатись записаний код (крім системних комбінацій Ctrl + С, Ctrl + V та ін.).

Після проведення потрібних дій зупиніть запис та перейдіть у вікно VBE для перегляду отриманого коду.

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

Але є і свої переваги! Якщо ви не знаєте як виконати певну функцію фільрування, сортування, форматування даних та ін. ви можете їх записати а потім відредагувати отриманий код під свої потреби.

Оголошення процедури

Оголошення процедури з використанням ключового слова Sub застосовується наступний синтаксис:

Sub ["ім'я"] ([список_аргументів])
	[Код процедури]
End Sub

Function ["ім'я"] ([список_аргументів])
	[Код процедури]
End Function 

- Sub і Function (обов'язкове) – позначає початок процедури.

- Ім'я (обов'язкове) – ідентифікує дану процедуру. Ім'ям процедури може бути довільна комбінація літер, цифр чи символів, але обов'язково повинне починатись із літери, наявність цифр чи спеціальних символів на початку назви викличе помилку:

рекомендовано використовувати імена англійською мовою, що коротко описують дії які проводить дана процедура.

- Список_аргументів (необов'язкове) – це укладений в дужки список змінних, які передаються в процедуру чи функцію. Для поділу аргументів використовується кома. Якщо процедура чи функція не використовує аргументів, тоді необхідно залишити порожні дужки.

- End Sub і End Function (обов'язкове) - вказує на завершення процедури.

Область дії (видимості) процедури

Область видимості процедури задається за допомогою необов'язкових параметрів перtд початком процедури Public Sub/Function, Private Sub/Function, Static Sub/Function

За замовчуванням всі процедури VBA (за винятком процедур обробки подій) визначаються як відкриті (Public), тобто вони доступні для всіх інших процедур у всіх модулях робочої книги.

За необхідності процедуру можна обмежити зробивши її закритою (Private) дана процедура буде доступна тільки для інших процедур в тому ж модулі. У діалоговому вікні Макрос (Macro) дані процедури відображатися не будуть.

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

При використанні в модулі, що містить оператор Option Private Module, процедура буде недоступна за межами проекту.

Виконання процедури

Далі представлені деякі способи виконання, або виклику, процедури VBA.

- За допомогою команди Run >Run Sub / UserForm (Виконати > Виконати процедуру / призначену для користувача форму), або скористатися кнопкою Run Sub / UserForm панелі інструментів Standard (Стандартна) або натиснути в вікні VBE, щоб виконати поточну процедуру (іншими словами, процедуру, в якій розташований курсор) якщо немає вибраної процедури буде відкрито діалогове вікно Макрос (Macro).

- З діалогового вікна Макрос (Macro).

- За допомогою комбінації клавіш і присвоєної процедурі клавіші (якщо процедурі присвоєно комбінація клавіш).

- Натиснувши на кнопці або формі робочого листа (якщо раніше їм було присвоєно процедуру).

- З іншої процедури. Процедури Sub і Function можуть викликати інші процедури. Рекомендовано записувати як Call [ім'я процедури] для процедури Sub.

- За допомогою призначеного для користувача елементу управління, що знаходиться на стрічці.

Крім того, вбудовані елементи керування стрічки можуть бути "переналаштовані" для виклику макросу на виконання.

- З призначеного для користувача контекстного меню.

- Після виконання певної події. Такими подіями можуть виступати відкриття робочої книги, збереження робочої книги, закриття робочої книги, зміна осередки, перехід на інший робочий лист і багато інших.

В подальшому на прикладах буде більш детально розглянуто усі розділи даної статті.


view2114like1dislike0 avatard_l4w clock 2016-04-12 04:10

Коментарі:



Для даної статті відсутні коментарі

Про нас

"Programmers World" розроблено з метою полегшення в освоєнні навичок програмування, та поширення матеріалів з сфери ІТ Українською мовою.

Кожен бажаючий може безкоштовно користуватися ресурсами сайту, щоб:

- Вивчати теоретичні аспекти мов програмування

- Переглядати практичне застосування теорії при виконанні різних міні проектів з відкритим кодом

- Розміщати свої завдання на форумі для допомоги в їх реалізації, або готового коду який може бути корисний іншим користувачам

- Спілкуватись з іншими користувачами та обмінюватись досвідом

Сайт функціонує на безопланій основі та ентузіазмі розробника, якщо Ви бажаєте долучитись до розвитку даного проекту то можете пожертвувати кошти на рахунки розміщені в блоці "Допомога сайту".

Сайт

Зареєстровані користувачі можуть скористатися системою діалогів, в профілі користувача, для отримання потрібної інформації. Написати!

Також Ви можете використати форми відправки Зауважень та Пропозицій.


Електронна пошта

Ви можете звертатись на нашу поштову скриньку site.programmersworld@gmail.com

www.000webhost.com