Kaip naudoti VBA mod operatorių (9 pavyzdžiai)

  • Pasidalinti
Hugh West

Svetainė VBA Mod nėra funkcija, o MOD yra "Excel" darbalapio funkcija. VBA Mod yra operatorius, dalijantis du skaičius ir grąžinantis likutis . Operatorius Mod yra sutrumpinta forma MODULO kuris naudojamas matematinėms operacijoms. Mod operatoriai Apibendrinti . slankiojo kablelio .

Šiame straipsnyje pateiksiu įvairių "Excel" naudojimo pavyzdžių. VBA Mod operatorius.

Atsisiųsti į praktiką

VBA Mod Operator.xlsm pavyzdžiai

VBA mod Funkcijos pagrindai: santrauka & amp; sintaksė

Santrauka

Svetainė VBA Mod operatorius dalina du skaičius ir grąžina likutis . Kai vienas iš jų yra žinomas kaip daliklis kitas yra numeris . Mod operatorius padalina numeris pagal daliklis .

Sintaksė

Skaičius1 Mod Skaičius2 (daliklis)

Argumentai

Argumentai Privalomas / pasirenkamas Paaiškinimas
Numeris1 Reikalinga Tai yra skaitmeninis išraiška
Numeris2 Reikalinga Tai yra skaitmeninis išraiška

Grąžinama vertė

Svetainė VBA Mod operatorius grąžina likutis .

Versija

Svetainė VBA Mod operatorius skirtas "Excel 2000" ir vėlesnėms versijoms.

Naudoju "Excel "Microsoft 365 įgyvendinti šiuos pavyzdžius.

9 "Excel" VBA mod funkcijos naudojimo pavyzdžiai

1. Naudojant VBA modifikaciją, kad gautumėte likutį

Jei norite, galite gauti likutis naudodami VBA Mod operatorius.

Paaiškinsiu jums procedūrą,

Pirmiausia atidarykite Kūrėjas skirtukas>> pasirinkite "Visual Basic .

➤ Dabar naujas langas "Microsoft Visual Basic for Applications pasirodys.

Toliau, iš Įdėkite >> pasirinkti Modulis

Dabar įveskite šį kodą į Modulis .

 Sub Get_Reminder() Dim n As Integer n = 29 Mod 3 MsgBox " 29 Mod 3 yra " & n End Sub 

Čia, į Get_Reminder subprocedūra, deklaravau kintamąjį n kaip Sveikasis skaičius ir naudojo jį, kad išsaugotų grąžinamą reikšmę Mod operatorius.

Tada naudokite MsgBox parodyti likutis .

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Vėl atidarykite Kūrėjas skirtukas>> iš Įdėkite >> pasirinkti Mygtukas Formos valdikliai

Dabar, Drag . Mygtukas norėdami jį patalpinti ten, kur norite pateikti antraštę.

Tada mygtukui galite suteikti pavadinimą.

➤ Pavadinau jį Gauti priminimą .

⏩ Dabar, dešiniuoju pelės klavišu kontekstinis meniu Priskirti Makro pasirodys.

Iš ten pasirinkite Priskirti makrokomandą .

⏩ A dialogo langas Priskirti makrokomandą pasirodys.

Tada pasirinkite Makro pavadinimas ir Makrokomandos .

⏩ Pasirinkau Get_Reminder Makro pavadinimas ir pasirinko VBA Mod.xlsm Makrokomandos .

Galiausiai spustelėkite GERAI .

Tada spustelėkite mygtuką, pavadintą Get_Reminder .

Taigi, jis rodys msg langelis su likutis .

Galite tai padaryti dėl visų numeriai gauti likutis .

Skaityti daugiau: VBA formato funkcija programoje "Excel" (8 naudojimo būdai ir pavyzdžiai)

2. Ląstelių nuorodų naudojimas VBA modelyje, norint gauti likutį

Naudodami Nuoroda į ląstelę iš "Excel" lapo galite gauti likutis VBA Mod .

Norėdami atidaryti VBA redaktorius, atlikite 1 skyriuje aprašytus veiksmus.

Tada įveskite šį kodą į Modulis .

 Sub Reminder_Using_CellReference() Dim n As Integer n = Range("B4").Value Mod Range("C4").Value MsgBox Range("B4").Value & " Mod " & Range("C4").Value & " is " & n End Sub 

Čia Reminder_Using_CellReference , deklaravau kintamąjį n kaip Sveikasis skaičius ir naudojo jį, kad išsaugotų grąžinamą reikšmę Mod operatorius.

Tada naudokite ląstelės nuorodą B4 kaip skaičius1 ir C4 kaip skaičius2 (daliklis)

Tada naudokite MsgBox parodyti likutis .

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Norėdami įterpti Mygtukas , atlikite 1 skyriuje paaiškintus veiksmus.

➤ Pavadinau mygtuką Nuoroda į ląstelę .

Po to spustelėkite Mygtukas paleisti VBA kodas.

Todėl gausite likutis naudojamos ląstelės nuorodą.

Susijęs turinys: Kaip grąžinti reikšmę VBA funkcijoje (ir masyvo, ir ne masyvo reikšmės)

3. Naudojant VBA Mod, iš neigiamo skaičiaus gaunamas likutis

Svetainė VBA Mod taip pat palaiko neigiamas numeriai apskaičiuojant likutis .

Norėdami atidaryti VBA redaktorius, atlikite 1 skyriuje aprašytus veiksmus.

Tada įveskite šį kodą į Modulis .

 Sub Reminder_From_NegativeNumber() Dim n As Integer n = Range("B5").Value Mod Range("C5").Value MsgBox Range("B5").Value & " Mod " & Range("C5").Value & " is " & n End Sub 

Čia Reminder_From_NegativeNumber, Deklaravau kintamąjį n kaip Sveikasis skaičius ir naudojo jį, kad išsaugotų grąžinamą reikšmę Mod operatorius.

Tada naudokite ląstelės nuorodą B5 kaip skaičius1 ir C5 kaip skaičius2 (daliklis)

Tada naudokite MsgBox parodyti likutis .

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Norėdami įterpti Mygtukas, atlikite 1 skyriuje paaiškintus veiksmus.

➤ Pavadinau mygtuką Priminimas iš neigiamo skaičiaus .

Po to spustelėkite Mygtukas paleisti VBA kodas.

Todėl gausite likutis neigiamas skaičius .

Skaityti daugiau: Kaip naudoti VBA funkciją IsNumeric (9 pavyzdžiai)

4. VBA modifikacijos naudojimas likutiui ląstelėje gauti

Vietoj to, kad rodytų likutis per msg dėžutė galite įdėti į langelį naudodami VBA MOD funkcija.

Norėdami atidaryti VBA redaktorius, atlikite 1 skyriuje aprašytus veiksmus.

Tada įveskite šį kodą į Modulis .

 Sub Reminder_in_Cell() ActiveCell.FormulaR1C1 = "=MOD(RC[-2],RC[-1])" Range("D4").Select End Sub 

Čia s ub-procedūra Reminder_in_Cell , naudojau ActiveCell.FormulaR1C1 formatas, kad gautumėte padėtį ActiveCell .

Tada naudokite MOD funkciją, kad gautumėte likutis .

Be to, naudotas Pasirinkite metodas.

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Norėdami įterpti Mygtukas ir priskirti . VBA kodą atlikite 1 skyriuje paaiškintus veiksmus.

➤ Pavadinau mygtuką Priminimas ląstelėje .

Tada pasirinkite D4 ląstelės.

Tada spustelėkite Mygtukas paleisti VBA kodas.

Dėl to gausite likutis pasirinktoje ląstelėje.

Atlikę tą patį procesą, gausite likutis likusius skaičius.

Skaityti daugiau: Kaip naudoti MsgBox funkciją "Excel VBA" (išsamios gairės)

5. Naudojant VBA Mod su sveikojo skaičiaus dalikliu & amp; Float Number

Jei jūsų daliklis yra sveikasis skaičius tipo, bet jūsų numeris yra float tipą, tada galite naudoti VBA Mod operatorius.

Norėdami atidaryti VBA redaktorius, atlikite 1 skyriuje aprašytus veiksmus.

Tada įveskite šį kodą į Modulis .

 Sub Reminder_From_Decimal_Number() Dim n As Integer n = Range("B5").Value Mod Range("C5").Value MsgBox Range("B5").Value & " Mod " & Range("C5").Value & " is " & n End Sub 

Čia, R eminder_From_Decimal_Number paprocedūra, Deklaravau kintamąjį n kaip Sveikasis skaičius ir naudojo jį, kad išsaugotų grąžinamą reikšmę Mod operatorius.

Tada naudokite ląstelės nuorodą B5 kaip skaičius1 ir C5 kaip skaičius2 (daliklis)

Tada naudokite MsgBox parodyti likutis .

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Norėdami įterpti Mygtukas , atlikite 1 skyriuje paaiškintus veiksmus.

➤ Pavadinau mygtuką Priminimas iš dešimtainio skaičiaus .

Po to spustelėkite Mygtukas paleisti VBA kodas.

Todėl gausite likutis dešimtainis skaičius .

Tačiau yra problema, kad VBA suapvalina . dešimtainė . Čia rezultatas turėjo būti 2.25 bet VBA Mod suapvalino iki 2 .

Atminkite, jei bet kuris dešimtainė/plaukiojanti taškas yra didesnis už 0.5 į VBA Mod tada jis bus suapvalinta į kitą sveikojo skaičiaus reikšmę.

Jei jis yra mažesnis nei 0.5 į VBA Mod , tada jis bus suapvalinta į esamą sveikojo skaičiaus vertę.

Skaityti daugiau: Kaip naudoti VBA Int funkciją "Excel" programoje ( 3 pavyzdžiai)

Panašūs skaitiniai:

  • Kaip naudoti IsNull funkciją "Excel VBA" (5 pavyzdžiai)
  • VBA Str funkcijos naudojimas programoje "Excel" (4 pavyzdžiai)
  • Kaip naudoti VBA perjungimo funkciją (6 tinkami pavyzdžiai)
  • VBA Len funkcijos naudojimas programoje "Excel" (4 pavyzdžiai)
  • Kaip pašalinti dublikatus "Excel" lape (7 metodai)

6. Naudojant VBA Mod, kai daliklis &; skaičius yra dešimtainiai skaičiai

Jei jūsų daliklis ir numeris abu yra dešimtainė/plokštinė tipą, taip pat galite naudoti VBA Mod operatorius.

Norėdami atidaryti VBA redaktorius, atlikite 1 skyriuje aprašytus veiksmus.

Tada įveskite šį kodą į Modulis .

 Sub Decimal_Both_Divisor_Number() Dim n As Integer n = Range("B5").Value Mod Range("C5").Value MsgBox Range("B5").Value & " Mod " & Range("C5").Value & " is " & n End Sub 

Čia, į paprocedūra Decimal_Both_Divisor_Number, Deklaravau kintamąjį n kaip Sveikasis skaičius ir naudojo jį, kad išsaugotų grąžinamą reikšmę Mod operatorius.

Tada naudokite ląstelės nuorodą B5 kaip skaičius1 ir C5 kaip skaičius2 (daliklis)

Tada naudokite MsgBox parodyti likutis .

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Norėdami įterpti Mygtukas, atlikite 1 skyriuje paaiškintus veiksmus.

➤ Pavadinau mygtuką Gaukite Priminimas iš Kai daliklis & amp; Skaičius dešimtainės trupmenos .

Po to spustelėkite Mygtukas paleisti VBA kodas.

Todėl gausite likutis abiem atvejais dešimtainis daliklis ir numeriai .

Tačiau yra problema, kad VBA suapvalina dešimtainė . Čia rezultatas turėjo būti 1.75 bet VBA Mod suapvalino iki 2 .

Susijęs turinys: VBA EXP funkcija programoje "Excel" (5 pavyzdžiai)

7. VBA modifikacija dešimtainių skaičių, didesnių nei 0,5, apvalinimui į viršų

Čia parodysiu, kaip Apibendrinti veikia VBA Mod .

Norėdami parodyti jums dešimtainė taškų problema, pirmiausia apskaičiuosiu likutis naudojant "Excel MOD funkcija.

Ląstelėje D4 , įveskite šią formulę,

=MOD(B6, C6)

Čia naudojau B6 kaip numeris C6 kaip daliklis .

Tada paspauskite ĮVESKITE gauti likutis ir gausite likutis kuris bus 7.7 .

Dabar apskaičiuokime VBA Mod , kad atidarytumėte VBA atlikite 1 skyriuje paaiškintus veiksmus.

Tada įveskite šį kodą į Modulis .

 Sub RoundsUp_Number() Dim n As Integer n = Range("B6").Value Mod Range("C6").Value MsgBox Range("B6").Value & " Mod " & Range("C6").Value & " is " & n End Sub 

Čia, į paprocedūra Decimal_Both_Divisor_Number, Deklaravau kintamąjį n kaip Sveikasis skaičius ir naudojo jį, kad išsaugotų grąžinamą reikšmę Mod operatorius.

Tada naudokite ląstelės nuorodą B6 kaip skaičius1 ir C6 kaip skaičius2 (daliklis)

Tada naudokite MsgBox parodyti likutis .

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Norėdami įterpti Mygtukas , atlikite 1 skyriuje paaiškintus veiksmus.

➤ Pavadinau mygtuką RoundsUp Dešimtainis skaičius .

Po to spustelėkite Mygtukas paleisti VBA kodas.

Todėl gausite likutis naudojamos ląstelės nuorodą.

Atidžiai pažvelkite į likutis kad VBA Mod grąžintas. MOD funkcija toms pačioms grąžintoms reikšmėms 7.7 bet VBA Mod grąžintas operatorius 0 . Kadangi VBA suapvalino vertes.

Skaityti daugiau: Kaip naudoti VBA apvalinimo funkciją programoje "Excel" (6 greiti naudojimo būdai)

8. Nustatykite lyginį arba nelyginį skaičių

Svetainė VBA Mod taip pat lemia Net arba Keista skaičių iš tam tikro intervalo.

Norėdami atidaryti VBA redaktorius, atlikite 1 skyriuje aprašytus veiksmus.

Tada įveskite šį kodą į Modulis .

 Sub Determine_Even_Or_Odd() Dim n As Integer For n = Range("B4").Value To Range("B8").Value If n Mod 2 = 0 Then MsgBox n & " yra lyginis skaičius!" Else MsgBox n & " yra nelyginis skaičius!" End If Next n End Sub 

Čia, į paprocedūra Determine_Even_Or_Odd, Deklaravau kintamąjį n kaip Sveikasis skaičius .

Tada naudojau Tinklalapiui ciklą, kuriame saugau reikšmę, kurią deklaravau per ląstelės nuorodą.

Toliau naudojau IF funkciją, kurioje nustatiau tokius kriterijus n Mod 2 = 0 jei reikšmė yra true, tuomet bus grąžinamas Net teiginys kitaip Keista .

Tada naudokite MsgBox parodyti pareiškimai .

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Norėdami įterpti Mygtukas , atlikite 1 skyriuje paaiškintus veiksmus.

➤ Pavadinau mygtuką Lyginis arba nelyginis .

Po to spustelėkite Mygtukas paleisti VBA kodas.

Todėl sužinosite, kuri reikšmė yra Net ir kuris iš jų yra Keista .

Čia, 1 yra Keista skaičius.

Čia, 2 yra Net skaičius.

Skaityti daugiau: VBA If - Then - Else pareiškimas programoje "Excel" (4 pavyzdžiai)

9. Ląstelių diapazono naudojimas VBA modelyje norint gauti likutį

Taip pat galite naudoti ląstelių diapazonas gauti likutis naudodami VBA Mod .

Norėdami atidaryti VBA redaktorius, atlikite 1 skyriuje aprašytus veiksmus.

Tada įveskite šį kodą į Modulis .

 Sub Get_Reminder_UsingVBA() Dim n As Integer For n = 4 To 9 MsgBox Cells(n, 2).Value Mod Cells(n, 3) Next n End Sub 

Čia, į Get_Reminder_UsingVBA paprocedūra, Deklaravau kintamąjį n kaip Sveikasis skaičius .

Tada naudojau Tinklalapiui ciklą, kuriame laikiau vertę, kurią deklaravau per ląstelės nuorodą. Ciklas veiks eilutėse esančioms vertėms. 4 į 9 .

Tada naudokite MsgBox parodyti likutis .

Dabar, Išsaugoti kodą ir grįžkite į darbalapį.

Norėdami įterpti Mygtukas , atlikite 1 skyriuje paaiškintus veiksmus.

➤ Pavadinau mygtuką Dinaminė ląstelės nuoroda .

Po to spustelėkite Mygtukas paleisti VBA kodas.

Todėl gausite likutis visoms naudojamoms reikšmėms po vieną.

Pirmasis skirtas numeris 29 kur daliklis yra . 3 .

2-asis skirtas numeris -47 kur daliklis yra . 5 .

Ciklas veiks tol, kol pasieks eilutę 9 . Penktasis skirtas numeris 59 kur daliklis yra . 6 .

Susijęs turinys: Kaip naudoti VBA atsitiktinio pasirinkimo funkciją "Excel" programoje (5 pavyzdžiai)

Skirtumas tarp "Excel" MOD ir VBA Mod

Nors daugeliu atvejų grąžinimo reikšmės yra vienodos MOD funkcija ir VBA Mod vis dėlto kai kuriais atvejais rezultatai skiriasi vienas nuo kito. Parodysiu, kuo jie skiriasi.

MOD Funkcija VBA Mod Operatorius
Svetainė MOD funkcija grąžina abu Sveikasis skaičius ir Dešimtainis numeriai. Mod operatorius grąžina tik Sveikasis skaičius numeriai.
Naudojant neigiamas skaičius MOD jis negrąžina neigiamas ženklas . Jis palaiko neigiamas skaičių ir grąžina neigiamas ženklas .

Dalykai, kuriuos reikia prisiminti

🔺 Operatorius suapvalins dešimtainė/plaukiojanti taškų.

Praktikos skyrius

Sąsiuvinyje pateikiau pratybų lapą, kuriame galima praktiškai išbandyti šiuos paaiškintus pavyzdžius.

Išvada

Šiame straipsnyje pateikiau 9 "Excel" pavyzdžius. VBA Mod operatorius. Taip pat bandžiau apžvelgti priežastis, dėl kurių dažnai rodomos klaidos. Kartu su dalykais, kuriuos reikės prisiminti naudojant operatorių. Drąsiai komentuokite žemiau bet kokio tipo užklausas ir pasiūlymus.

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.