Innholdsfortegnelse
VBA Mod er ikke en funksjon mens MOD er en funksjon i et Excel-regneark. VBA Mod er en operator som deler to tall og returnerer resten . Operatoren Mod er en kortform av MODULO som brukes i matematiske operasjoner. Mod -operatørene runder opp flytepunktet .
I denne artikkelen vil jeg vise du ulike eksempler på bruk av Excel VBA Mod operatør.
Last ned for å øve
Eksempler på VBA Mod Operator. xlsm
Grunnleggende om VBA Mod Funksjon: Sammendrag & Syntaks
Sammendrag
VBA Mod operatoren deler to tall og returnerer resten . Der en er kjent som en deler er en annen et tall . Mod -operatoren deler tallet med divisoren .
Syntaks
Number1 Mod Number2 (Divisor)
Argumenter
Argumenter | Obligatorisk/ Valgfritt | Forklaring |
---|---|---|
Nummer1 | Obligatorisk | Det er et numerisk uttrykk |
Tall2 | Obligatorisk | Det er et numerisk uttrykk |
Returverdi
VBA Mod operatoren returnerer en rest .
Versjon
VBA Mod operatoren er tilgjengelig for Excel 2000 og nyere.
Jeg bruker Excel Microsoft 365 til åforklart i avsnitt 1.
➤ Jeg kalte knappen Partall eller Odd .
Deretter klikker du på knappen for å kjøre VBA -kode.
Derfor vil du få vite hvilken verdi som er Even og hvilken som er Odd .
Her, 1 er Odd -tallet.
Her er 2 partall nummer.
Les mer: VBA If – Then – Else Statement in Excel (4 Eksempler)
9. Bruke celleområde i VBA Mod for å få resten
Du kan også bruke celleområdet for å få resten ved å bruke VBA Mod .
For å åpne VBA redigeringsprogrammet, følg trinnene som er forklart i avsnitt 1.
Skriv deretter inn følgende kode i Modul .
3520
Her, i Get_Reminder_UsingVBA-underprosedyren, erklærte jeg variabelen n som Heltall .
Deretter brukte jeg en For -løkke der jeg beholdt verdien som jeg deklarerte gjennom cellereferanse. Sløyfen vil fungere for verdiene fra rad 4 til 9 .
Brukte deretter MsgBox for å vise resten .
Nå Lagre koden og gå tilbake til regnearket.
For å sette inn knappen , følg trinnene som er forklart i seksjon 1 .
➤ Jeg kalte knappen Dynamisk cellereferanse .
Deretter klikker du på knappen for å kjøre VBA kode.
Derfor vil du få resten for alle de brukte verdiene enmed én.
Den første er for tallet 29 hvor deleren er 3 .
Den andre er for tallet -47 hvor deleren er 5 .
Sløyfen vil fungere til den når rad 9 . Den femte er for tallet 59 der deleren er 6 .
Relatert innhold: Hvordan bruke VBA Randomize-funksjonen i Excel (5 eksempler)
Forskjellen mellom Excel MOD & VBA Mod
Selv om returverdiene for de fleste tilfellene er de samme for MOD funksjonen og VBA Mod operatoren, men for noen tilfeller er resultatet skiller seg fra hverandre. La meg vise deg forskjellen mellom dem.
MOD Funksjon | VBA Mod Operator |
---|---|
MOD funksjonen returnerer både Heltall og desimaltall . | Mod operatoren returnerer bare heltall tall. |
Når du bruker et negativt tall i MOD returnerer den ikke et negativt tegn . | Det støtter negative tall og returnerer deretter negativt fortegn . |
Ting å huske
🔺 Operatoren vil runde opp desimal/flytende poeng.
Øvingsseksjon
Jeg har gitt et øvingsark i arbeidsboken for å øve på disse forklarte eksemplene.
Konklusjon
I denne artikkelen har jeg vist 9 eksempler på Excel VBA Mod operatøren. Jeg prøvde også å dekke årsakene til å vise feil ofte. Sammen med tingene du må huske når du bruker operatøren. Kommenter gjerne nedenfor for alle typer spørsmål og forslag.
implementer disse eksemplene.9 Eksempler på bruk av VBA Mod-funksjonen i Excel
1. Bruk av VBA Mod for å få resten
Hvis du vil, kan du få en resten ved å bruke VBA Mod operatøren.
La meg forklare prosedyren for deg,
Til å begynne med åpner du Utvikleren fanen >> velg Visual Basic .
➤ Nå vises et nytt vindu med Microsoft Visual Basic for Applications .
Neste, fra Sett inn >> velg Modul
Skriv inn følgende kode i Modul .
6034
Her, i underprosedyren Get_Reminder , erklærte jeg variabelen n som heltall og brukte den til å beholde den returnerte verdien til Mod operatør.
Bruket deretter MsgBox for å vise resten .
Nå Lagre kode og gå tilbake til regnearket.
Igjen, åpne Utvikler fanen >> fra Sett inn >> velg Knapp fra Skjemakontroller
Nå Drag knappen til plasser den der du vil gi bildeteksten.
Deretter kan du gi knappen et navn.
➤ Jeg kalte den Få påminnelse .
⏩ Nå, høyreklikk på musen vil en kontekstmeny med Tildel Makro vises.
Derfra velger du Tildel makro .
⏩ En dialogboks for Tildel makro vises .
Så,velg Makronavnet og Makroene i .
⏩ Jeg valgte Get_Reminder fra Makronavnet og valgte VBA Mod.xlsm fra Makroer i .
Til slutt klikker du OK .
Klikk deretter på knappen som heter Get_Reminder .
Derfor vil den vise en meldingsboks med resten .
Du kan gjøre det for alle numrene for å få resten .
Les mer: VBA-formatfunksjon i Excel (8 bruksområder med eksempler)
2. Bruke cellereferanse i VBA Mod for å få resten
Ved å bruke Cell Reference fra Excel-arket kan du få resten fra VBA Mod .
For å åpne VBA editor, følg trinnene forklart i avsnitt 1.
Skriv deretter inn følgende kode i Modul .
8381
Her, i Reminder_Using_CellReference , erklærte jeg variabelen n som Heltall og brukte den til å beholde den returnerte verdien til Mod operatør.
Neste , brukte cellereferansen B4 som nummer1 og C4 som nummer2 (divisor)
Bruket deretter MsgBox for å vise resten .
Nå Lagre koden og gå tilbake til regnearket.
For å sette inn 1>Knapp , følg trinnene som er forklart i seksjon 1.
➤ Jeg kalte knappen Cellereferanse .
Deretter klikker du på Knapp for å kjøre VBA kode.
Derfor vil du få resten for den brukte cellereferansen.
Relatert innhold: Hvordan Returner en verdi i VBA-funksjon (både matrise- og ikke-matriseverdier)
3. Bruke VBA Mod for å få en rest fra et negativt tall
VBA Mod støtter også negative tall mens resten beregnes.
For å åpne VBA editor, følg trinnene forklart i del 1.
Skriv deretter inn følgende kode i modulen .
2380
Her , i Reminder_From_NegativeNumber, erklærte jeg variabelen n som Heltall og brukte den til å beholde den returnerte verdien til Mod operatoren.
Deretter brukte du cellereferansen B5 som nummer1 og C5 som nummer2 (deler)
Brukte deretter MsgBox for å vise resten .
Nå Lagre koden og gå tilbake til regnearket.
For å sette inn -knappen, følg trinnene som er forklart i seksjon 1.
➤ I name th e-knapp Påminnelse fra negativt tall .
Deretter klikker du på knappen for å kjøre VBA -koden.
Derfor vil du få resten for det negative tallet .
Les mer: Hvordan bruke VBA IsNumeric-funksjonen (9 eksempler)
4. Bruke VBA Mod for å få resten i celle
I stedet for å vise resten gjennom msg -boksen du kan plassere den i en celle ved å bruke VBA MOD funksjonen.
For å åpne VBA editor, følg trinnene som er forklart i del 1.
Skriv deretter inn følgende kode i modulen .
4804
Her, i s ub-prosedyre Reminder_in_Cell brukte jeg ActiveCell.FormulaR1C1 -formatet for å få posisjonen til ActiveCell .
Deretter brukte du MOD -funksjonen for å få resten .
Brukte også Velg -metoden.
Nå , Lagre koden og gå tilbake til regnearket.
For å sette inn knappen og tilordne VBA koden følg trinnene forklart i del 1.
➤ Jeg kalte knappen Påminnelse i celle .
Deretter velger du D4 -cellen.
Deretter klikker du på knappen for å kjøre VBA -koden.
Som et resultat vil du få resten i den valgte cellen.
Ved å følge samme prosess vil du få resten for resten av tall.
Les mer: Hvordan bruke MsgBox-funksjonen i Excel VBA (en fullstendig retningslinje)
5. Bruke VBA Mod med Integer Divisor & Float Number
Hvis divisor er en heltall type, men tallet er i float skriv så kan du bruke VBA Mod -operatoren.
For å åpne VBA -editoren, følg trinnene som er forklart i avsnittet1.
Skriv deretter inn følgende kode i Modul .
9154
Her, i R eminder_From_Decimal_Number-underdelen -prosedyre, Jeg erklærte variabelen n som Heltall og brukte den til å beholde den returnerte verdien til Mod operatoren.
Deretter brukte du cellereferansen B5 som nummer1 og C5 som nummer2 (divisor)
Bruket deretter MsgBox for å vise resten .
Nå Lagre koden og gå tilbake til regnearket.
For å sette inn Knapp , følg trinnene som er forklart i avsnitt 1.
➤ Jeg kalte knappen Påminnelse fra desimaltall .
Deretter klikker du på Knapp for å kjøre VBA -koden.
Derfor vil du få resten for desimaltall .
Men det er et problem at VBA runder opp desimalen . Her skulle resultatet være 2,25 men VBA Mod avrundet det til 2 .
Husk om noen desimal/ flytende punkt er større enn 0,5 i VBA Mod , så blir det rundet opp til neste heltallsverdi.
Hvis den er mindre enn 0,5 i VBA Mod , så blir den rundet opp til den eksisterende heltallsverdien.
Les Mer: Hvordan bruke VBA Int-funksjonen i Excel ( 3 eksempler)
Lignende avlesninger:
- Slik bruker du IsNull-funksjonen i Excel VBA (5Eksempler)
- Bruk VBA Str-funksjonen i Excel (4 eksempler)
- Hvordan bruke VBA-svitsjfunksjonen (6 egnede eksempler)
- Bruk VBA Len-funksjon i Excel (4 eksempler)
- Hvordan fjerne duplikater i Excel-ark (7 metoder)
6. Bruke VBA Mod When Divisor & Tall er begge desimaler
Hvis divisor og tall begge er av typen desimal/float , kan du også bruke VBA Mod operatør.
For å åpne VBA redigering, følg trinnene forklart i avsnitt 1.
Skriv deretter inn følgende kode i Modul .
3239
Her, i underprosedyren Decimal_Both_Divisor_Number, erklærte jeg variabelen n som Heltall og brukte det til å beholde den returnerte verdien til Mod -operatøren.
Deretter brukte du cellereferansen B5 som tall1 og C5 som nummer2 (deler)
Bruket deretter MsgBox for å vise resten .
Nå, Lagre koden og gå tilbake til regnearket.
For å sette inn knappen, følg trinnene som er forklart i avsnitt 1.
➤ Jeg kalte knappen Få Påminnelse fra når Divisor & Tall desimal .
Deretter klikker du på knappen for å kjøre VBA -koden.
Derfor vil du få rest for både desimaldeler og tall .
Men det er et problem som VBA runder opp desimalen . Her skulle resultatet være 1,75 men VBA Mod avrundet det til 2 .
Relatert innhold: VBA EXP-funksjon i Excel (5 eksempler)
7. VBA Mod for å runde opp desimaltall større enn 0,5
Her vil jeg vise deg hvordan avrundingen opp fungerer i VBA Mod .
For å demonstrere desimal poengproblemet, vil jeg først beregne resten ved å bruke Excel MOD funksjonen.
I celle D4 skriver du inn følgende formel,
=MOD(B6, C6)
Her brukte jeg B6 som nummer C6 som en deler .
Deretter, trykk ENTER for å få resten og du får resten som blir 7.7 .
Nå, la oss beregne gjennom VBA Mod , for å åpne VBA -editoren, følg trinnene forklart i seksjon 1.
Skriv deretter inn følgende kode i Module .
1955
Her, i underprosedyren Desimal_Begge_Divisornummer, erklærte jeg den variable e n som Heltall og brukte det til å beholde den returnerte verdien til Mod operatoren.
Deretter brukte du cellereferansen B6 som nummer1 og C6 som nummer2 (divisor)
Bruket deretter MsgBox for å vise resten .
Nå Lagre koden og gå tilbake til regnearket.
For å sette inn knappen , følg detrinn forklart i avsnitt 1.
➤ Jeg kalte knappen RoundsUp desimaltall .
Deretter klikker du på knappen for å kjøre VBA -kode.
Derfor vil du få resten for den brukte cellereferansen.
Se nøye etter ved resten at VBA Mod returnerte. MOD funksjonen for de samme verdiene returnerte 7.7 , men VBA Mod -operatøren returnerte 0 . Som VBA avrundet verdiene.
Les mer: Hvordan bruke VBA-rundefunksjonen i Excel (6 raske bruksområder)
8. Bestem partall eller oddetall
VBA Mod bestemmer også partall eller oddetall fra et gitt område.
For å åpne VBA redigering, følg trinnene som er forklart i seksjon 1.
Skriv deretter inn følgende kode i Modul .
7115
Her, i underprosedyren Determine_Even_Or_Odd, erklærte jeg variabelen n som heltall .
Deretter brukte jeg en For -løkke der jeg beholdt verdien som jeg deklarerte gjennom cellereferanse.
Deretter brukte jeg en IF funksjon hvor jeg setter kriteriene som n Mod 2 = 0 hvis verdien er sann, vil den returnere et Partall utsagn ellers Odd .
Brukte deretter MsgBox for å vise utsagnene .
Nå Lagre koden og gå tilbake til regnearket.
Følg trinnene for å sette inn knappen