/ / Користувальницька середня функція в Excel VBA

Користувальницька середня функція в Excel VBA

Нижче ми розглянемо програму в Росії Excel VBA який створює a Визначена користувачем функція що обчислює середній випадково вибраного діапазону, за винятком одного або декількох значень, які є вичерпаними і не повинні бути середніми.

Ситуація:

Користувальницька середня функція в Excel VBA

Визначені користувачем функції повинні бути поміщені в модуль.

1. Відкрийте редактор Visual Basic і натисніть «Вставити», «Модуль».

2. Додайте наступну кодову лінію:

Function CUSTOMAVERAGE(rng As Range, lower As Integer, upper As Integer)

Назва нашої Функції CUSTOMAVERAGE. Частина між дужками означає, що ми надаємо Excel VBA діапазону та два змінні цілого як вхідні дані. Ми називаємо нашу діапазон rng, одну змінну цілого, яку ми називаємо нижчою, і одну цільову змінну, яку ми називаємо верхньою, але ви можете використовувати будь-які імена.

3. Потім оголошуємо об'єкт Range та дві змінні типу Integer. Ми називаємо клітинку Object Range. Один цілій змінної, яку ми називаємо загальною та однією змінною цілого, яку ми називаємо кількістю.

Dim cell As Range, total As Integer, count As Integer

4. Ми хочемо перевірити кожну комірку у випадково вибраному діапазоні (цей діапазон може бути будь-якого розміру). У програмі Excel VBA ви можете використовувати для кожного циклу Next для цього. Додайте наступні кодові рядки:

For Each cell In rng

Next cell

Примітка. Тут вибираються випадкові вибірки rng і cell, ви можете використовувати будь-які імена. Не забудьте вказати ці назви в решті частини вашого коду.

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

If cell.Value >= lower And cell.Value <= upper Then
    total = total + cell.Value
    count = count + 1
End If

6. Щоб повернути результат цієї функції (бажане середнє значення), додати наступну кодову лінію поза циклом.

CUSTOMAVERAGE = total / count

7. Не забудьте закінчити функцію. Додайте рядок:

End Function

8. Тепер ви можете використовувати цю функцію так само, як і будь-яку іншу функцію Excel, щоб обчислити середнє число, яке потрапляє між двома значеннями.

Результат:

Користувацький середній результат функції

Як перевірку ви можете видалити всі значення, які єнижче 10 і вище 30, і скористайтеся стандартною середньою функцією Excel, щоб визначити, чи Excel обчислює таке ж середнє значення, як наша звичайна середня функція.

Індивідуальна перевірка функцій

Наша користувальницька середня функція працює! Примітка. Ця функція доступна лише в цій робочій книзі.

Також читайте: