Як створити факторіальну функцію у vba (з прикладом)


Факторіал — це добуток усіх натуральних чисел, менших або рівних даному натуральному числу.

Наприклад, факторіал 5 (написано 5!) обчислюється як:

  • 5! = 5 * 4 * 3 * 2 * 1 = 120

Щоб створити факторіальну функцію у VBA, можна використати такий синтаксис:

 Function FindFactorial(N As Integer) As Double

 Dim i As Integer, result As Long
 
 result = 1

 For i = 1 To N
     result = result * i
 Next

 FindFactorial = result

End Function

Створивши цю функцію, ви можете ввести щось на кшталт =FindFactorial(A2) у клітинку Excel, щоб знайти факториал цілого числа в клітинці A2 .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: створення факторіальної функції у VBA

Припустімо, у нас є такий список чисел у Excel, і ми хочемо обчислити факторіал кожного числа:

Для цього ми можемо визначити таку функцію у VBA:

 Function FindFactorial(N As Integer) As Double

 Dim i As Integer, result As Long
 
 result = 1

 For i = 1 To N
     result = result * i
 Next

 FindFactorial = result

End Function

Створивши цю функцію, ми можемо ввести таку формулу в клітинку B2 , щоб обчислити факторіал значення в клітинці A2 :

 =FindFactorial( A2 )

Потім ми можемо клацнути та перетягнути цю формулу до кожної клітинки, що залишилася в стовпці B:

факторіальна функція у VBA

Зауважте, що стовпець B тепер відображає факториал кожного цілого числа в стовпці A.

Наприклад:

  • 1! = 1
  • 2! = 2 * 1 = 2
  • 3! = 3 * 2 * 1 = 6
  • 4! = 4 * 3 * 2 * 1 = 24

І так далі.

Примітка . Щоб обчислити факторіал у Excel без використання VBA, можна скористатися функцією FACT .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: Як додати значення в діапазон
VBA: як обчислити середнє значення діапазону
VBA: як підрахувати кількість рядків у діапазоні

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *