VBA MOD Operator - Kako koristiti Excel VBA Modulo? (Primjeri)

Excel VBA MOD Operator

U VBA MOD- u isto je što i kod primjene u matematici, kada se broj podijeli sa svojim djeliteljem i kada od te podjele dobijemo podsjetnik, ova funkcija koristi se da bi nam dao taj ostatak od podjele, to nije funkcija u VBA-u nego je operator.

MOD nije ništa drugo nego MODULO je matematička operacija. To je potpuno isto kao i podjela, ali rezultat je malo drugačiji kada podjela uzima podijeljeni iznos, ali MOD uzima ostatak podjele. Na primjer: Ako podijelite 21 s 2, rezultat dijeljenja je 10,50 prema MOD-u, ostatak je dijeljenja, tj. 1. (Broj 2 može podijeliti samo 20, a ne 21, tako da je ostatak 1).

U normalnom Excelu to je funkcija, ali u VBA to nije funkcija. To je samo matematički operator. U ovom ćemo članku detaljno razmotriti ovaj operator.

Sintaksa

Samo da vas podsjetim, ovo nije funkcija koja ima sintaksu. Za razumijevanje našeg čitatelja, dopustite mi da to izrazim.

Broj 1 MOD Broj 2 (djelitelj)

Broj 1 nije ništa drugo doli broj koji pokušavamo podijeliti.

Broj 2 ovo je djelitelj, tj. Podijelit ćemo broj 1 ovim dijeliteljem.

MOD rezultat dobiven brojem 1 / brojem 2.

Kako koristiti MOD u VBA?

Primjer # 1

Slijedite korake u nastavku za pisanje koda.

Korak 1: Stvorite ime makronaredbe.

Kodirati:

Pod MOD_Primjer1 () Kraj Sub

Korak 2: Definirajte jednu od varijabli kao " Integer ".

Kodirati:

Sub MOD_Example1 () Dim i As Integer End Sub

Korak 3: Sada izvedite izračun kao “i = 20 MOD 2.”

Kao što sam rekao na početku, MOD je operator, a ne funkcija. Stoga sam upotrijebio riječ MOD poput toga kako upisujem plus (+).

Kodirati:

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

Korak 4: Sada okvir za poruke dodijelite vrijednost "I".

Kodirati:

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

Korak 5: Pokrenite okvir s kodom i prikazat će vrijednost "I."

Primjer # 2

Mod u VBA uvijek vraća cjelobrojnu vrijednost, tj. Bez decimala ako broj navedete u decimalama. Na primjer, pogledajte donji kod.

Kodirati:

Pod MOD_Primjer2 () Dim i kao cijeli broj i = 26,25 Mod 3 MsgBox i End Sub

Dijelitelj 3 može podijeliti 24, pa je ovdje ostatak 2,25, ali MOD operator vraća cjelobrojnu vrijednost, tj. 2, a ne 2,25.

Sada ću izmijeniti broj na 26,51 i vidjeti razliku.

Kodirati:

Pod MOD_Primjer2 () Dim i kao cijeli broj i = 26,51 Mod 3 MsgBox i End Sub

Pokrenut ću ovaj kod i vidjeti kakav je rezultat.

Vau !!! Dobili smo nulu kao odgovor. Razlog zbog kojeg smo dobili nulu jer VBA zaokružuje brojeve kao što to rade naši bankari, tj. Bilo koja decimalna točka koja je veća od 0,5 zaokružit će se na sljedeću cjelobrojnu vrijednost. Dakle, u ovom je slučaju 26,51 zaokruženo na 27.

Budući da 3 može podijeliti 27 s 9, nećemo dobiti nikakve preostale vrijednosti, pa je vrijednost i jednaka nuli.

Sada ću dati vrijednost djelitelja također u decimalnim zarezima.

Kodirati:

Pod MOD_Primjer2 () Dim i kao cijeli broj i = 26,51 Mod 3,51 MsgBox i End Sub

Korak 6: Pokrenite ovaj kod i pogledajte kakav je rezultat.

Kao odgovor dobili smo 3 jer će se 26,51 zaokružiti na 27, a vrijednost djelitelja 3,51 zaokružiti na 4.

Dakle, ako podijelite 27 s 4, ostatak je 3.

Excel MOD funkcija u odnosu na VBA MOD Operator

Korak 1: Sada pogledajte razliku između excela i VBA MOD operatora. Imam vrijednost 54,24, a vrijednost djelitelja je 10.

Korak 2: Ako primijenim funkciju MOD, dobit ću rezultat kao 4.25.

Korak 3: Ali ako napravite istu operaciju s VBA, dobit ćemo 4 kao ostatak, a ne 4.25.

Kodirati:

Pod MOD_Primjer2 () Dim i kao cijeli broj i = 54,25 Mod 10 MsgBox i End Sub

Korak 4: Pokrenite ovaj kod i pogledajte kakav je rezultat.

Stvari koje treba zapamtiti

  • To nije funkcija, ali je aritmetički operator.
  • Ovo je zaokruživanje i zaokruživanje decimalnih vrijednosti, za razliku od funkcije MOD u funkciji radnog lista.

Zanimljivi članci...