VBA MOD Operator | Paano gamitin ang Excel VBA Modulo? (Mga Halimbawa)

Operator ng Excel VBA MOD

Sa VBA MOD ay pareho sa aplikasyon sa matematika, kapag ang isang numero ay nahahati ng tagapamahagi nito at nakakakuha kami ng isang paalala mula sa dibisyon na iyon, ginagamit ang pagpapaandar na ito upang bigyan kami ng natitirang bahagi mula sa dibisyon, hindi ito isang pagpapaandar sa VBA kaysa sa ito ay isang operator.

Ang MOD ay walang anuman kundi ang MODULO ay isang pagpapatakbo sa matematika. Ito ay eksaktong kapareho ng dibisyon ngunit ang resulta ay bahagyang naiiba kung saan ang dibisyon ay tumatagal ng hinati na halaga ngunit ang MOD ay tumatagal ng natitirang dibisyon. Halimbawa: Kung hinati mo ang 21 sa 2 resulta ng dibisyon ay 10.50 sa pamamagitan ng MOD ay natitirang bahagi ng paghahati hal. 1. (Ang bilang 2 ay maaaring hatiin lamang ang 20, hindi 21, kaya ang natitira ay 1).

Sa normal na excel, ito ay isang function ngunit sa VBA hindi ito isang function, ito ay isang operator lamang sa matematika. Sa artikulong ito, titingnan namin nang detalyado ang operator na ito.

Syntax

Paalala lamang sa iyo na ito ay hindi isang pagpapaandar upang magkaroon ng syntax. Para sa pag-unawa ng aming mambabasa hayaan mo akong ilagay ito sa salita.

 Number 1 MOD Number 2 (Divisor) 

Bilang 1 ay wala kundi kung ano ang bilang na sinusubukan nating hatiin.

Bilang 2 ito ang tagahati ie maghihiwalay tayo Bilang 1 ng tagapamahalang ito.

MOD ang resulta na ibinigay ng Bilang 1 / Bilang 2.

Paano gamitin ang MOD sa VBA?

Maaari mong i-download ang Template ng Function na VBA MOD dito - Template ng Pag-andar ng VBA MOD

Halimbawa # 1

Sundin ang mga hakbang sa ibaba upang isulat ang code.

Hakbang 1: Lumikha ng isang pangalan ng macro.

Code:

 Sub MOD_Example1 () End Sub 

Hakbang 2: Tukuyin ang isa sa mga variable bilang "Integer”.

Code:

 Sub MOD_Example1 () Dim i As Integer End Sub 

Hakbang 3: Gawin ang pagkalkula bilang "I = 20 MOD 2"

Tulad ng sinabi ko, sa simula, ang MOD ay isang operator, hindi isang pagpapaandar. Kaya ginamit ko ang salitang MOD tulad ng kung paano ako nagpapasok ng isang plus (+).

Code:

 Sub MOD_Example1 () Dim i As Integer i = 21 Mod 2 End Sub 

Hakbang 4: Ngayon italaga ang halaga ng "I" sa kahon ng mensahe.

Code:

 Sub MOD_Example1 () Dim i As Integer i = 21 Mod 2 MsgBox i End Sub 

Hakbang 5: Patakbuhin ang kahon ng mensahe ng code ay ipapakita ang halaga ng "I".

Halimbawa # 2

Ang mod sa vba ay laging nagbabalik ng halaga ng integer ibig sabihin nang walang mga decimal kung ibibigay mo ang bilang sa mga decimal. Halimbawa, tingnan ang code sa ibaba.

Code:

 Sub MOD_Example2 () Dim i As Integer i = 26.25 Mod 3 MsgBox i End Sub 

Maaaring hatiin ng Divisor 3 ang 24 kaya ang natitira dito ay 2.25 ngunit ibabalik ng MOD operator ang halaga ng integer ibig sabihin 2, hindi 2.25.

Ngayon ay babaguhin ko ang numero sa 26.51 at makikita ang pagkakaiba.

Code:

 Sub MOD_Example2 () Dim i As Integer i = 26.51 Mod 3 MsgBox i End Sub 

Tatakbo ko ang code na ito at tingnan kung ano ang resulta.

Wow !!! Mayroon kaming zero bilang sagot. Ang dahilan kung bakit nakakuha kami ng zero dahil sa pag-ikot ng VBA ng mga bilang tulad ng ginagawa ng aming mga banker, ibig sabihin, anumang decimal point na mas malaki sa 0.5 ay bilugan hanggang sa susunod na halaga ng integer. Kaya sa kasong ito 26.51 ay bilugan hanggang 27.

Dahil maaaring hatiin ng 3 ang 27 sa 9, hindi kami makakakuha ng anumang mga natitirang halaga, kaya ang halaga ng i ay katumbas ng zero.

Ngayon ay ibibigay ko ang halaga ng divisor din sa mga decimal point.

Code:

 Sub MOD_Example2 () Dim i As Integer i = 26.51 Mod 3.51 MsgBox i End Sub 

Hakbang 6: Patakbuhin ang code na ito at tingnan kung ano ang resulta.

Nakuha namin ang 3 bilang sagot dahil ang 26.51 ay bilugan hanggang sa 27 at ang divisor na halaga na 3.51 ay bilugan hanggang sa 4.

Kaya't kung hatiin mo ang 27 ng 4 na natitira ay 3.

Pag-andar ng Excel MOD kumpara sa VBA MOD Operator

Hakbang 1:Ngayon tingnan ang pagkakaiba sa pagitan ng excel at VBA MOD operator. Mayroon akong halagang 54.24 at ang halaga ng tagahati ay 10.

Hakbang 2:Ngayon Kung ilalapat ko ang pag-andar ng MOD makukuha ko ang resulta bilang 4.25.

Hakbang 3:Ngunit kung gagawin mo ang parehong operasyon sa VBA makakakuha kami ng 4 na natitira, hindi 4.25.

Code:

 Sub MOD_Example2 () Dim i As Integer i = 54.25 Mod 10 MsgBox i End Sub 

Hakbang 4:Patakbuhin ang code na ito at tingnan kung ano ang resulta.

Bagay na dapat alalahanin

  • Ito ay hindi isang pag-andar ngunit ito ay isang operator ng arithmetic.
  • Ito ang pag-ikot at pag-ikot ng mga halaga ng decimal hindi tulad ng pag-andar ng MOD sa pagpapaandar ng worksheet.