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

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 jagamisega 2, on tulemuseks 10,50 MOD-i järgi jagamise ülejäänud osa, st 1. (Number 2 võib jagada ainult 20, mitte 21, seega on ülejäänud 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 teile meelde tuletamiseks ei ole see süntaks. Meie lugeja mõistmiseks lubage mul see sõnadesse panna.

 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?

Selle VBA MOD-i funktsiooni malli saate alla laadida siit - VBA MOD-i funktsioonide mall

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 ütlesin, on MOD alguses 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õnumi kast, kus kuvatakse väärtus “I”.

Näide 2

Kui sisestate arvu kümnendkohtadena, tagastab vba mod alati täisarvu, st ilma kümnendkohtadeta. 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, nii et ülejäänud on 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, sest VBA ümardab arvud nagu meie pankurid, st kõik kümnendkohad, mis on suuremad kui 0,5, ümardatakse järgmise täisarvuni. Nii et sel juhul ümardatakse 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, sest 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 vs VBA MOD-operaator

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, vaid on aritmeetiline operaator.
  • See on ümardatud ja ümardab kümnendväärtused allapoole erinevalt funktsiooni MOD funktsioonist töölehe funktsioonis.

$config[zx-auto] not found$config[zx-overlay] not found