/ / Прилагођена просечна функција у Екцелу ВБА

Прилагођена просечна функција у Екцелу ВБА

У наставку ћемо погледати програм Екцел ВБА што ствара а Кориснички дефинисана функција која израчунава просек случајно одабраног опсега искључујући једну или више вриједности које су изванредне и не би требале бити просјечне.

Ситуација:

Прилагођена просечна функција у Екцелу ВБА

Кориснички дефинисане функције морају бити постављене у модул.

1. Отворите Висуал Басиц Едитор и кликните Инсерт, Модуле.

2. Додајте следећу линију кода:

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

Име наше функције је ЦУСТОМАВЕРАГЕ. Дио између заграда значи да се Екцел ВБА додаје опсег и две интегер варијабле као улаз. Ми именујемо свој опсег рнг, једну интегер варијаблу коју зовемо ниже, и једну варијанту Интегер коју позивамо горње, али можете користити било која имена.

3. Затим прогласимо објекат Ранге и две варијабле типа Интегер. Зовемо објект ћелије објекта Ранге. Једна варијабла интегер назива се укупна и једна интегер варијабла коју зовемо бројати.

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

4. Желимо да проверимо сваку ћелију у насумично одабраном опсегу (овај опсег може бити од било које величине). У Екцел-у ВБА, за ово можете користити петље за сваки наредни следећи. Додајте следеће линије кода:

For Each cell In rng

Next 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. Сада можете користити ову функцију баш као и свака друга Екцел функција за израчунавање просјечног броја бројева који падају између двије вриједности.

Резултат:

Прилагођени просечни резултат функције

Као чек можете избрисати све вриједности које сумањи од 10 и више од 30 и користе стандардну Просјечну функцију у Екцел-у да би видели да ли Екцел израчунава исти просјек као наша прилагођена просечна функција.

Провера просечне функције

Наша прилагођена просечна функција ради! Напомена: ова функција је доступна само у овој радној свесци.

Такође прочитајте: