VBA mod operatoridan qanday foydalanish (9 ta misol)

  • Buni Baham Ko'Ring
Hugh West

VBA Mod funksiya emas, MOD esa Excel ish varag‘idagi funksiyadir. VBA Mod - bu ikki raqamni ajratuvchi va qolgan ni qaytaruvchi operator. Mod operatori MODULO ning qisqa shakli boʻlib, matematika operatsiyalarida qoʻllaniladi. Mod operatorlari yaxlitlash suzuvchi nuqta .

Ushbu maqolada men ko'rsataman Excel VBA Mod operatoridan foydalanishning turli misollari.

Amaliyot uchun yuklab olish

VBA Mod Operatoriga misollar. xlsm

VBA mod funktsiyasi asoslari: Xulosa & Sintaksis

Xulosa

VBA Mod operatori ikkita raqamni ajratadi va qolganini qaytaradi. Biri bo'luvchi boshqasi raqam sifatida tanilgan. Mod operatori raqamni ni bo'luvchiga ajratadi.

Sintaksis

Number1 Mod Number2 (Divisor)

Argumentlar

Argumentlar Majburiy/ Ixtiyoriy Tushuntirish
1-raqam Majburiy Bu bu raqamli ifoda
2-son Majburiy Bu raqamli ifoda

Qaytish qiymati

VBA Mod operatori qoldiqni qaytaradi .

Versiya

VBA Mod operatori Excel 2000 va undan keyingi versiyalari uchun mavjud.

Men Excel Microsoft 365 dan foydalanmoqdaman1-bo'limda tushuntirilgan.

➤ Men tugmani Juft yoki Toq deb nomladim.

Shundan so'ng tugmasini bosib, tugmachasini ishga tushiring>VBA kodi.

Shuning uchun siz qaysi qiymat Juft va qaysi biri Toq ekanligini bilib olasiz.

Bu erda, 1 Toq son.

Bu yerda 2 Juft raqam.

Batafsil o'qing: VBA If - Keyin - Excelda Else bayonoti (4 ta misol)

9. Qolgan miqdorni olish uchun VBA Modda hujayra diapazonidan foydalanish

Shuningdek, siz hujayra diapazoni dan foydalanib qolgan ni olishingiz mumkin. VBA Mod .

VBA muharririni ochish uchun 1-bo'limda tushuntirilgan amallarni bajaring.

Keyin, quyidagi kodni kiriting. Module .

4883

Bu yerda, Get_Reminder_UsingVBA pastki protsedurasida Men n oʻzgaruvchisini eʼlon qildim. sifatida Integer .

Keyin, men For tsiklidan foydalandim, bu erda men hujayra havolasi orqali e'lon qilgan qiymatni saqlab qoldim. Loop 4 dan 9 gacha boʻlgan qiymatlar uchun ishlaydi.

Keyin MsgBox qolgan ni koʻrsatish uchun ishlatildi>.

Endi, Kodni saqlang va ish varag'iga qayting.

Tugmani kiritish uchun 1-bo'limda tushuntirilgan amallarni bajaring. .

➤ Men tugmachani Dinamik hujayra ma'lumotnomasi deb nomladim.

Shundan so'ng VBA<2-ni ishga tushirish uchun tugmasini bosing> kod.

Shuning uchun siz barcha ishlatilgan qiymatlar uchun qolgan ni olasiz.bittadan.

Birinchisi raqam 29 bu erda bo'luvchi 3 bo'ladi.

Ikkinchisi raqam -47 bu erda bo'luvchi 5 uchun .

Loop 9 qatoriga yetguncha ishlaydi. Beshinchisi raqam 59 uchun, bu erda bo'luvchi 6 .

Tegishli tarkib: Excelda VBA Randomize funksiyasidan qanday foydalanish (5 ta misol)

Excel MOD va amp o'rtasidagi farq; VBA Mod

Ko'p hollarda qaytarish qiymatlari MOD funktsiyasi va VBA Mod operatori uchun bir xil bo'lsa-da, ba'zi hollarda natija bir-biridan farq qiladi. Sizga ularning orasidagi farqni ko'rsataman.

MOD Funktsiya VBA Mod Operator
MOD funktsiyasi ikkala Butun va O'nlik raqamlarni qaytaradi. Mod operator faqat butun raqamlarni qaytaradi.
manfiy raqamni MOD da ishlatganda, u salbiy belgi . U salbiy raqamlarni qoʻllab-quvvatlaydi va keyin salbiy belgini qaytaradi.

Eslash kerak bo'lgan narsalar

🔺 Operator o'nli/suzuvchi nuqtalarni yaxlitlaydi.

Amaliyot bo'limi

Men ushbu tushuntirilgan misollarni mashq qilish uchun ish daftarida mashq varag'ini taqdim etdim.

Xulosa

Ushbu maqolada men Excel VBA Mod operatorining 9 ta misolini ko'rsatdim. Men xatolarni tez-tez ko'rsatish sabablarini yoritishga harakat qildim. Operatordan foydalanishda eslab qolishingiz kerak bo'lgan narsalar bilan bir qatorda. Har qanday soʻrov va takliflar uchun quyida izoh qoldiring.

ushbu misollarni amalga oshiring.

Excelda VBA Mod funksiyasidan foydalanishga 9 misol

1. Qolgan qoldiqni olish uchun VBA Moddan foydalanish

Agar xohlasangiz, qolgan VBA Mod operatori yordamida.

Sizga protsedurani tushuntirib beraman,

Boshlash uchun Dasturchini oching. tab >> Visual Basic -ni tanlang.

➤ Endi Microsoft Visual Basic for Applications ning yangi oynasi paydo bo'ladi.

Keyingi, Qo'shish >> tanlang Module

Endi Module ga quyidagi kodni kiriting.

7136

Bu yerda Get_Reminder quyi protsedurasida men n oʻzgaruvchini Integer deb eʼlon qildim va uni <1 ning qaytarilgan qiymatini saqlash uchun ishlatdim>Mod operator.

Keyin MsgBox dan qolgan ni koʻrsatish uchun ishlatildi.

Endi, Saqlash kodini kiriting va ish varag'iga qayting.

Yana, Dasturchi yorlig'ini >> dan Qo'shish >> Shakl boshqaruvlari

-dan tugmasini ni tanlang. uni taglavha qo'ymoqchi bo'lgan joyga qo'ying.

Keyin, tugmaga nom berishingiz mumkin.

➤ Men uni Eslatmani olish deb nomladim.

⏩ Endi sichqonchani o'ng tugmasini bosing Makro tayinlash kontekst menyusi paydo bo'ladi.

U yerdan Makroni tayinlash -ni tanlang.

Makroni tayinlash ning muloqot oynasi paydo bo'ladi. .

Keyin, Makro nomi va Makrolar -ni tanlang.

⏩ Men Makro nomi dan Eslatmani olish -ni tanladim va <1-ni tanladim>VBA Mod.xlsm Makrolar -dan.

Nihoyat, OK tugmasini bosing.

Keyin, Get_Reminder nomli tugmani bosing.

Demak, u qolgan bilan xabar qutisini ko'rsatadi.

Siz buni barcha raqamlar uchun qolgan olish uchun qilishingiz mumkin.

Batafsil o'qing: Excel-dagi VBA formati funksiyasi (8 ta misollar bilan foydalanish)

2. Qolgan ma'lumotni olish uchun VBA modida hujayra ma'lumotnomasidan foydalanish

Excel sahifasidan Hujayra ma'lumotnomasi dan foydalanib, VBA Mod dan qolgan ni olishingiz mumkin.

Ochish uchun VBA muharriri, 1-bo'limda tushuntirilgan amallarni bajaring.

Keyin, Module ga quyidagi kodni kiriting.

7217

Mana, Reminder_Using_CellReference da men n oʻzgaruvchini Integer deb eʼlon qildim va undan Mod operator.

Keyingi , katak havolasini B4 raqam1 sifatida va C4 ni 2-raqam (boʻluvchi) sifatida ishlatgan

Keyin MsgBox qolgan qoldiqni ko'rsatish uchun.

Endi Kodni saqlang va ish varag'iga qayting.

Qo'shish uchun Tugma , 1-bo'limda tushuntirilgan amallarni bajaring.

➤ Men tugmani Hujayra ma'lumotnomasi deb nomladim.

Shundan so'ng tugmasini bosing. VBA -ni ishga tushirish uchun tugmachasikod.

Shuning uchun siz foydalanilgan hujayra havolasi uchun qolgan ni olasiz.

Aloqador tarkib: Qanday qilib VBA funksiyasidagi qiymatni qaytarish (ham massiv, ham massiv bo'lmagan qiymatlar)

3. Salbiy raqamdan qoldiqni olish uchun VBA Moddan foydalanish

VBA Mod qolgan ni hisoblashda salbiy raqamlarni ham qo'llab-quvvatlaydi.

VBA <2ni ochish uchun>muharrir, 1-bo'limda tushuntirilgan amallarni bajaring.

Keyin, Module ga quyidagi kodni kiriting.

7154

Bu yerga , Reminder_From_NegativeNumber, da men n oʻzgaruvchini Integer deb eʼlon qildim va undan Mod operatorining qaytarilgan qiymatini saqlash uchun foydalandim.

Keyin, B5 yacheyka havolasidan raqam1 va C5 2-raqam (boʻluvchi)

sifatida ishlatildi. Keyin Qolgan qoldiqni ko'rsatish uchun MsgBox dan foydalaning.

Endi Kodni saqlang va ish varag'iga qayting.

tugmasini kiritish uchun 1-bo'limda tushuntirilgan amallarni bajaring.

➤ Men thni nomladim e tugmasi Salbiy raqamdan eslatma .

Shundan so'ng VBA kodini ishga tushirish uchun tugmasini bosing.

Shunday qilib, siz salbiy raqam uchun qolgan ni olasiz.

Batafsil o'qing: VBA IsNumeric funktsiyasidan qanday foydalanish kerak (9 ta misol)

4. Yacheykada qoldiqni olish uchun VBA Moddan foydalanish

qolganini ko'rsatish o'rniga orqali msg qutisi siz uni VBA MOD funktsiyasidan foydalanib hujayraga joylashtirishingiz mumkin.

VBA ochish uchun tahrirlovchisi uchun 1-bo'limda tushuntirilgan amallarni bajaring.

Keyin, Module ga quyidagi kodni kiriting.

5550

Bu yerda, s ub-procedure Reminder_in_Cell da men ActiveCell o'rnini olish uchun ActiveCell.FormulaR1C1 formatidan foydalandim.

Keyin, Qolgan ni olish uchun MOD funktsiyasidan foydalanildi.

Shuningdek, Select usulidan foydalaning.

Endi , Kodni saqlang va ish varag'iga qayting.

Tugmasini va tayinlash VBA kodni kiritish uchun 1-bo'limda tushuntirilgan amallarni bajaring.

➤ Men tugmani Uyadagi eslatma deb nomladim.

Keyin, D4 katakchasini tanlang.

Keyin, VBA kodini ishga tushirish uchun tugmasini bosing.

Natijada siz olasiz tanlangan katakdagi qoldiq .

Xuddi shu jarayonni bajarish orqali siz qolgan qismi uchun qolgan ni olasiz. raqamlar.

Batafsil o'qing: Excel VBA-da MsgBox funksiyasidan qanday foydalanish (to'liq yo'riqnoma)

5. Integer Divisor bilan VBA Moddan foydalanish & amp; Float raqam

Agar bo'luvchi butun turi bo'lsa, lekin sizning raqamingiz float da bo'lsa yozing, keyin siz VBA Mod operatoridan foydalanishingiz mumkin.

VBA muharririni ochish uchun boʻlimda tushuntirilgan amallarni bajaring.1.

Keyin, Module ga quyidagi kodni kiriting.

6278

Bu yerda, R eminder_From_Decimal_Number pastki qismida -protsedura, Men n o'zgaruvchini Integer deb e'lon qildim va undan Mod operatorining qaytarilgan qiymatini saqlash uchun foydalandim.

Keyin B5 yacheyka havolasidan raqam1 va C5 2-raqam (boʻluvchi)

Keyin MsgBox qolgan qoldiqni ko'rsatish uchun.

Endi, Kodni saqlang va ish varag'iga qayting.

Qo'shish uchun Tugma , 1-bo'limda tushuntirilgan amallarni bajaring.

➤ Men tugmani O'nlik sondan eslatish deb nomladim.

Shundan so'ng, tugmani bosing. VBA kodini ishga tushirish uchun tugmachasi.

Shuning uchun siz o'nlik son uchun qolgan ni olasiz.

Lekin VBA o'nlik ni yaxlitlashda muammo bor. Bu yerda natija 2.25 boʻlishi kerak edi, lekin VBA Mod uni 2 ga yaxlitladi.

Mavjud boʻlsa, oʻnlik/ suzuvchi nuqta VBA Mod da 0,5 dan katta bo'lsa, u keyingi butun son qiymatiga yaxlitlanadi .

Agar u VBA Mod da 0,5 dan kam bo'lsa, u yaxlitlanadi mavjud butun son qiymatiga.

O'qing Batafsil: Excelda VBA Int funksiyasidan qanday foydalanish kerak (3 ta misol)

Oʻxshash oʻqishlar:

  • Excel VBA da IsNull funksiyasidan qanday foydalanish kerak (5Misollar)
  • Excelda VBA Str funksiyasidan foydalanish (4 ta misol)
  • VBA Switch funksiyasidan qanday foydalanish (6 ta mos misol)
  • Excelda VBA Len funksiyasidan foydalanish (4 ta misol)
  • Excel varaqidagi dublikatlarni qanday olib tashlash mumkin (7 usul)

6. Divisor & amp; VBA Moddan foydalanish; Raqam ikkala o'nlikdir

Agar sizning bo'luvchi va raqam ikkalasi ham o'nlik/float turida bo'lsa, siz ham foydalanishingiz mumkin VBA Mod operator.

VBA muharririni ochish uchun 1-bo'limda tushuntirilgan amallarni bajaring.

Keyin, quyidagi kodni kiriting. Module .

2909

Bu yerda, O'nlik_Both_Divisor_Number pastki protsedurasida Men n o'zgaruvchisini e'lon qildim Integer va undan Mod operatorining qaytarilgan qiymatini saqlash uchun foydalanildi.

Keyin, B5 yacheyka havolasini sifatida ishlatdi. raqam1 va C5 2-raqam (bo'luvchi) sifatida

Keyin MsgBox qolgan ni ko'rsatish uchun ishlatildi.

Endi, Kodni saqlang va ish varag'iga qayting.

Tugmasini kiritish uchun 1-bo'limda tushuntirilgan amallarni bajaring.

➤ Men tugmachani Olish Divisor & O'nlik son .

Shundan so'ng VBA kodini ishga tushirish uchun tugmasini bosing.

Shuning uchun siz qolgan ikkala o'nlik bo'luvchi va sonlar uchun.

Ammo shunday muammo borki VBA o'nlik ni yaxlitlaydi. Bu yerda natija 1.75 boʻlishi kerak edi, lekin VBA Mod uni 2 ga yaxlitladi.

Aloqador tarkib: Excel-dagi VBA EXP funksiyasi (5 ta misol)

7. 0,5 dan katta o'nlik sonni yaxlitlash uchun VBA rejimi

Bu erda men yaxlitlash VBA Mod da qanday ishlashini ko'rsating.

Sizga o'nlik nuqta muammosini ko'rsatish uchun avval men hisoblab chiqaman. Excel MOD funktsiyasidan foydalanib qolgan .

D4 katagiga quyidagi formulani kiriting,

=MOD(B6, C6)

Bu yerda men B6 ni son C6 sifatida boʻluvchi sifatida ishlatdim.

Keyin, Qolgan ni olish uchun ENTER -ni bosing va siz qolgan ni olasiz, bu 7,7 bo'ladi.

Endi, VBA Mod orqali hisoblab chiqamiz, VBA muharririni ochish uchun 1-bo'limda tushuntirilgan amallarni bajaring.

Keyin, Module ga quyidagi kodni kiriting.

4541

Bu yerda, Oʻnlik_Both_Divisor_Number pastki protsedurasida, Men eʼlon qildim o'zgaruvchan e n Integer sifatida va undan Mod operatorining qaytarilgan qiymatini saqlash uchun foydalandi.

Keyin, katakcha havolasidan foydalanildi. B6 raqam1 va C6 2-raqam (bo'luvchi) sifatida

Keyin ko'rsatish uchun MsgBox dan foydalanilgan. qolgan .

Endi, Kodni saqlang va ish varag'iga qayting.

Tugma ni kiritish uchun quyidagi amallarni bajaring. the1-bo'limda tushuntirilgan qadamlar.

➤ Men tugmani RoundsUp Decimal Number deb nomladim.

Shundan so'ng tugmasini bosish uchun VBA kodi.

Shuning uchun siz foydalanilgan hujayra havolasi uchun qolgan ni olasiz.

Diqqat bilan qarang. VBA Mod qaytgan qolgan . Xuddi shu qiymatlar uchun MOD funktsiyasi 7.7 ni qaytardi, ammo VBA Mod operatori 0 ni qaytardi. VBA qiymatlarni yaxlitlashtirgani uchun.

Batafsil o'qing: Excelda VBA Round funktsiyasidan qanday foydalanish (6 ta tezkor foydalanish)

8. Juft yoki toq sonni aniqlang

VBA rejimi shuningdek, Juft yoki Toq sonni aniqlaydi. berilgan diapazondan.

VBA muharririni ochish uchun 1-bo'limda tushuntirilgan amallarni bajaring.

Keyin, Module .

2644

Mana, Determine_Even_Or_Odd kichik protsedurasida Men n o'zgaruvchisini Integer deb e'lon qildim. .

Keyin, men For loopidan foydalandim, unda men hujayra havolasi orqali e'lon qilgan qiymatni saqladim.

Keyin, men IF dan foydalandim. funksiya, bu yerda men mezonni n Mod 2 = 0 deb belgilaganman, agar qiymat rost boʻlsa, u holda u Juft ifodani qaytaradi, aks holda Goq .

Keyin MsgBox bayonotlarni koʻrsatish uchun ishlatildi.

Endi Kodni saqlang va ish varaqiga qayting.

Tugma ni kiritish uchun amallarni bajaring

Hugh West - bu sohada 10 yildan ortiq tajribaga ega bo'lgan yuqori tajribali Excel treneri va tahlilchisi. Buxgalteriya hisobi va moliya yo‘nalishi bo‘yicha bakalavr va biznes boshqaruvi bo‘yicha magistr darajasiga ega. Xyu o'qitishga ishtiyoqi bor va unga amal qilish va tushunish oson bo'lgan o'ziga xos o'qitish usulini ishlab chiqdi. Uning Excel bo'yicha ekspert bilimlari butun dunyo bo'ylab minglab talabalar va mutaxassislarga o'z malakalarini oshirishga va o'z martabalarida muvaffaqiyat qozonishlariga yordam berdi. Xyu o'z blogi orqali o'z bilimlarini dunyo bilan baham ko'radi, jismoniy shaxslar va korxonalarga o'z salohiyatini to'liq ro'yobga chiqarishga yordam berish uchun bepul Excel darsliklari va onlayn treninglarni taklif qiladi.