Підручник із функцій Excel VBA: повернення, виклик, приклади

Що таке функція?

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

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

Навіщо використовувати функції

Переваги використання функцій такі ж, як і в розділі вище про те, навіщо використовувати підпрограми.

Правила іменування функцій

Правила присвоєння імен функціям такі самі, як і ті, що описані у вищезазначеному розділі про правила присвоєння імен підпрограмам.

Синтаксис VBA для оголошення функції

Private Function myFunction (ByVal arg1 As Integer, ByVal arg2 As Integer)
    myFunction = arg1 + arg2
End Function

ТУТ у синтаксисі,

код дію
  • «Приватна функція myFunction(…)»
  • Тут ключове слово “Function” використовується для оголошення функції з назвою “myFunction” і запуску тіла функції.
  • Ключове слово "Private" використовується для визначення області дії функції
  • «ByVal arg1 як ціле число, ByVal arg2 як ціле число»
  • Він оголошує два параметри цілочисельного типу даних з іменами «arg1» і «arg2».
  • myFunction = arg1 + arg2
  • обчислює вираз arg1 + arg2 і присвоює результат імені функції.
  • «Кінцева функція»
  • «End Sub» використовується для завершення тіла функції

Функція продемонстрована на прикладі:

Функції дуже схожі на підпрограму. Основна відмінність між підпрограмою та функцією полягає в тому, що функція повертає значення під час її виклику. У той час як підпрограма не повертає значення, коли вона викликається. Припустимо, ви хочете скласти два числа. Ви можете створити функцію, яка приймає два числа та повертає суму чисел.

  1. Створіть інтерфейс користувача
  2. Додайте функцію
  3. Напишіть код для командної кнопки
  4. Перевірте код

Крок 1) Користувацький інтерфейс

Додайте командну кнопку до аркуша, як показано нижче

Функції та підпрограми VBA

Установіть такі властивості для CommanButton1.

S / N Контроль властивість значення
1 CommandButton1 ІМ'Я btnAddNumbers
2 Підпис додавати Numbers функція


Тепер ваш інтерфейс має виглядати наступним чином

Функції та підпрограми VBA

Крок 2) Код функції.

  1. Натисніть Alt + F11, щоб відкрити вікно коду
  2. Додайте наступний код
Private Function addNumbers(ByVal firstNumber As Integer, ByVal secondNumber As Integer)
    addNumbers = firstNumber + secondNumber
End Function

ТУТ у коді,

код дію
  • «Додавання приватної функціїNumbers(...) "
  • Він оголошує приватну функцію “addNumbers”, який приймає два цілих параметри.
  • «ByVal firstNumber як ціле, ByVal secondNumber як ціле»
  • Він оголошує дві змінні параметрів firstNumber і secondNumber
  • «додатиNumbers = перше число + друге число”
  • Він додає значення firstNumber і secondNumber і призначає суму для додаванняNumbers.

Крок 3) Напишіть код, який викликає функцію

  1. Клацніть правою кнопкою миші на btnAddNumbers_Натисніть кнопку команди
  2. Виберіть Переглянути код
  3. Додайте наступний код
Private Sub btnAddNumbersFunction_Click()
    MsgBox addNumbers(2, 3)
End Sub

ТУТ у коді,

код дію
«ПовідомленняBox додаватиNumbers(2,3) "
  • Він викликає функцію addNumbers і передає 2 і 3 як параметри. Функція повертає суму двох чисел п’ять (5)

Крок 4) Запустіть програму, ви отримаєте наступні результати

Функції та підпрограми VBA

Завантажте Excel із кодом вище

Завантажте наведений вище код Excel

Підсумки

  • Функція — це фрагмент коду, який виконує певне завдання. Функція повертає значення після виконання.
  • І підпрограми, і функції пропонують повторне використання коду
  • І підпрограми, і функції допомагають розбити великі фрагменти коду на невеликий керований код.