Екцел прилагођене функције - Направите прилагођене функције које дефинише корисник

Како створити прилагођене Екцел функције? (са примерима)

Да бисмо креирали прилагођену функцију, морамо да напишемо код за рад сопствених функција, који се назива „УДФ“. Прилагођене функције су кориснички дефинисане функције у Екцелу, па да бисте креирали ове функције, морате темељито знати ВБА кодирање.

Пример # 1 - Додајте било која два броја

На пример, ако желите да додате било која два броја, приказаћемо вам једноставну функцију коју дефинише корисник (УДФ).

  • Притисните Алт + Ф11 и убаците модул.
  • Напишите модул у модул да бисте креирали прилагођену функцију.

Свака прилагођена функција треба да започне с речју „Функција“, а иза ње следи име формуле.

Свака функција такође има своје аргументе или параметре слично прилагођеним функцијама; треба да дефинишемо те параметре. Будући да додајемо само два броја, дефинирајмо те параметре и тим променљивим аргумената доделимо типове података.

Након што се параметри дефинишу са типом података, морамо да дефинишемо и типове података резултата исхода. Хајде да дефинишемо исход као вредност „Интегер“.

Унутар овог „Функционалног поступка“ напишемо код формуле.

Шифра:

Додавање функције (Нум1 као целобројно, Нум2 као целобројно) Као целобројно додавање = Нум1 + Нум2 Крајња функција

То каже да ће резултат функције „Додавање“ бити збир вредности Нум1 и Нум2.

  • Сада се вратите на радни лист и унесите било која два цела броја.
  • Сад ћемо додати ова два броја. Отворите знак једнакости и унесите назив прилагођене функције „Додавање“.

Изаберите први и други број уношењем сепаратора као зареза (,).

  • Притисните тастер ентер да бисте добили резултат.

Вау !!! Као и функција СУМ, добили смо резултат збира два броја.

Погледајте ове бројеве.

Покушајте сада да додате ова два броја.

Вредност грешке смо добили јер је аргумент типа „Нум1 & Нум2“ тип „Интегер“, тј. Ова два аргумента могу да садрже вредности између -32767 и 32767, па ће све више од овога проузроковати ове грешке.

Покушајте сада да додате ова два броја.

Чак и ово ће проузроковати испод вредности грешке.

Иако су појединачне вредности аргумената у границама типа података целог броја, и даље имамо ову грешку јер је укупан збир ових бројева већи од целобројне граничне вредности.

Будући да смо тип резултата прогласили и „целобројним“, резултат додавања два броја такође треба да буде ограничење целобројног броја.

Пример # 2 - Додај све непарне бројеве

Екцел нема уграђену функцију која може додати све непарне бројеве са листе бројева. Али без бриге, створићемо прилагођену екцел функцију која ће то подржати.

Отворите прозор ВБА уређивача и дајте име процедури функције.

Дајте параметар за ову функцију као „Распон“.

То значи да за ову функцију пружамо улазну вредност за ову функцију као „опсег“ вредности ћелија.

Будући да морамо петљу проћи кроз више од једне ћелије, морамо да користимо петљу „За сваку“ у ВБА, па отворите петљу „За сваку“.

Унутар ове петље додајте доњи код.

Шифра:

Функција АддОдд (Рнг Ас Ранге) за сваку ћелију у Рнг Иф целл.Валуе Мод 2 0 Затим АддОдд = АддОдд + целл.Валуе Следећа ћелија Крај Функција

Морамо да користимо функцију „МОД“ да бисмо тестирали број. Када је свака вредност ћелије подељена бројем 2, а остатак није једнак нули, тада би наш код требало да дода све вредности непарних бројева.

Сада се вратите на радни лист и отворите екцел прилагођену функцију.

Изаберите опсег бројева од А1 до Д8.

Притисните тастер ентер да бисте добили резултат „непарног броја“. “

Дакле, у опсегу од А1 до Д8 имамо збир непарних бројева 84.

Пример # 3 - Додај све парне бројеве

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

Шифра:

Функција АддЕвен (Рнг Ас Ранге) за сваку ћелију у Рнг Ако је целл.Валуе Мод 2 = 0 Затим АддЕвен = АддЕвен + целл.Валуе Следећа функција Енд Енд

Ова функција ће додати само паран број. У овом случају користили смо логику ако је свака вредност ћелије подељена са 2, а остатак је једнак нули, тада ће код додати само те вредности ћелије.

Овако, користећи ВБА кодирање, можемо створити властите прилагођене функције.

Ствари које треба запамтити

  • Направите прилагођене функције нису ништа друго до функције које дефинишу корисници.
  • Да бисте креирали прилагођене функције, треба имати знање о напредним вештинама ВБА кодирања.
  • Током креирања прилагођених екцел функција, важно је имати на оку аргументе и њихове типове података.

Занимљиви Чланци...