VBA MOD operaator - Kuidas kasutada Exceli VBA Modulot? (Näited)

Lang L: none (table-of-contents)

Exceli VBA MOD-operaator

In VBA MOD on sama kohaldamise matemaatika, kui number on jagatud selle jagaja ja saame meeldetuletus sellest piirkonnast, kasutatakse seda funktsiooni, et anda meile, et ülejäänu jagunemisel see ei ole funktsiooni VBA pigem kui ta on operaator.

MOD pole midagi muud kui MODULO on matemaatiline operatsioon. See on täpselt sama mis jagamine, kuid tulemus on veidi erinev, kui jagamine võtab jagatud summa, kuid MOD võtab jagamise ülejäänud osa. Näiteks: kui jagate 21 jagamise tulemusega 2, on jagamise ülejäänud osa, st 1.50 MOD-i järgi. (Numbriga 2 saab jagada ainult 20, mitte 21, nii et ülejäänud on 1).

Tavalises excelis on see funktsioon, kuid VBA-s pole see funktsioon. See on lihtsalt matemaatiline operaator. Selles artiklis uurime seda operaatorit üksikasjalikult.

Süntaks

Lihtsalt meelde tuletades, see ei ole süntaks. Meie lugeja mõistmiseks lubage mul see sõnaga sõnastada.

Number 1 MOD Number 2 (jagaja)

Number 1 pole midagi muud kui see, mis on number, mida proovime jagada.

Number 2 see on jagaja, st jagame numbri 1 selle jagajaga.

MOD numbri 1 / numbri 2 antud tulemus .

Kuidas kasutada MOD-i VBA-s?

Näide 1

Koodi kirjutamiseks toimige järgmiselt.

1. samm: looge makro nimi.

Kood:

Sub MOD_Example1 () End Sub

2. samm: määratlege üks muutujatest täisarv .

Kood:

Sub MOD_Example1 () Dim i täisarvu lõpp Sub

3. samm: nüüd tehke arvutus järgmiselt: "i = 20 MOD 2."

Nagu ma alguses ütlesin, on MOD operaator, mitte funktsioon. Nii et olen kasutanud sõna MOD nagu pluss (+) sisestamine.

Kood:

Sub MOD_Eexample1 () Dim i täisarvuna i = 21 Mod 2 End Sub

4. samm: määrake nüüd sõnumikasti väärtus “I”.

Kood:

Sub MOD_Eexample1 () Dim i täisarvuna i = 21 Mod 2 MsgBox i End Sub

5. samm: käivitage koodisõnumikast näitab väärtust „I”.

Näide 2

VBA-s olev mod tagastab alati täisarvu, st ilma kümnendkohtadeta, kui sisestate arvu kümnendkohtadeks. Näiteks vaadake allolevat koodi.

Kood:

Sub MOD_Eexample2 () Dim i täisarvuna i = 26.25 Mod 3 MsgBox i End Sub

Jagaja 3 saab jagada 24, seega on ülejäänud siin 2,25, kuid operaator MOD tagastab täisarvu, st 2, mitte 2,25.

Nüüd muudan numbri väärtuseks 26,51 ja näen erinevust.

Kood:

Sub MOD_Eexample2 () Dim i täisarvuna i = 26.51 Mod 3 MsgBox i End Sub

Käitan selle koodi ja vaatan, mis on tulemus.

Vau !!! Oleme vastuseks saanud nulli. Põhjus, miks saime nulli, kuna VBA ümardab arvud nagu meie pankurid, st iga kümnendkoht, mis on suurem kui 0,5, ümardatakse järgmise täisarvuni. Niisiis ümardatakse antud juhul 26,51 27-ni.

Kuna 3 saab 27 jagada 9-ga, ei saa me ülejäänud väärtusi, seega on i väärtus võrdne nulliga.

Nüüd esitan jagaja väärtuse ka komakohtades.

Kood:

Sub MOD_Eexample2 () Dim i täisarvuna i = 26.51 Mod 3.51 MsgBox i End Sub

6. samm: käivitage see kood ja vaadake, mis on tulemus.

Saime vastuseks 3, kuna 26.51 ümardatakse 27-ni ja jagaja väärtus 3.51 ümardatakse 4-ni.

Nii et kui jagate 27 neljaga, on ülejäänud 3.

Exceli MOD-funktsioon võrreldes VBA MOD-operaatoriga

1. samm: vaadake nüüd Exceli ja VBA MOD-operaatori erinevust. Mul on väärtus 54,24 ja jagaja väärtus on 10.

2. samm: Nüüd, kui rakendan MOD-funktsiooni, saan tulemuseks 4.25.

3. samm: aga kui teete VBA-ga sama toimingu, saame ülejäänud kui 4, mitte 4.25.

Kood:

Sub MOD_Eexample2 () Dim i täisarvuna i = 54.25 Mod 10 MsgBox i End Sub

4. samm: käivitage see kood ja vaadake, mis on tulemus.

Asjad, mida meeles pidada

  • See ei ole funktsioon, kuid see on aritmeetiline operaator.
  • See on ümardatud ja ümardab kümnendarvud allapoole, erinevalt funktsiooni MOD funktsioonist töölehe funktsioonis.

Huvitavad Artiklid...