Jak używać operatora VBA Mod (9 przykładów)

  • Udostępnij To
Hugh West

Na stronie VBA Mod nie jest funkcją, podczas gdy MOD jest funkcją w arkuszu Excela. VBA Mod jest operatorem, który dzieli dwie liczby i zwraca reszta . operator Mod jest skróconą formą MODULO który jest używany w operacjach matematycznych. Mod operatorzy zaokrąglenie the zmiennoprzecinkowe .

W tym artykule pokażę różne przykłady wykorzystania Excela VBA Mod operator.

Pobierz do ćwiczeń

Przykłady VBA Mod Operator.xlsm

Podstawy funkcji VBA Mod: Podsumowanie & Składnia

Podsumowanie

Na stronie VBA Mod operator dzieli dwie liczby i zwraca reszta . Where one is known as a dzielnik inny jest numer . Mod operator dzieli numer przez dzielnik .

Składnia

Liczba1 Mod Liczba2 (Dzielnik)

Argumenty

Argumenty Wymagane/opcjonalne Wyjaśnienie
Numer1 Wymagane Jest to numeryczny wyraz
Liczba2 Wymagane Jest to numeryczny wyraz

Wartość zwrotna

Na stronie VBA Mod operator zwraca reszta .

Wersja

Na stronie VBA Mod operator jest dostępny dla programu Excel 2000 i nowszych.

Używam Excela Microsoft 365 aby zaimplementować te przykłady.

9 Przykładów użycia funkcji VBA Mod w Excelu

1. użycie VBA Mod aby uzyskać resztę

Jeśli chcesz, możesz dostać reszta poprzez użycie VBA Mod operator.

Pozwól, że wyjaśnię ci procedurę,

Na początek należy otworzyć Deweloper tab>> wybierz Visual Basic .

➤ Teraz pojawi się nowe okno Microsoft Visual Basic for Applications pojawi się.

Dalej, od Wkładka >> wybierz Moduł

Teraz wpisz następujący kod w Moduł .

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

Tutaj, w Get_Reminder w procedurze sub, zadeklarowałem zmienną n jako Integer i używał go do przechowywania wartości zwracanej przez Mod operator.

Następnie użył MsgBox pokazać reszta .

Teraz, Zapisz kod i wróć do arkusza.

Ponownie otwórz Deweloper tab>> od Wkładka >> wybierz Przycisk z Kontrola formularzy

Teraz, Drag the Przycisk aby umieścić go w miejscu, w którym chcesz dać napis.

Następnie można nadać nazwę przyciskowi.

➤ Nazwałem go Pobierz przypomnienie .

⏩ Teraz, prawy przycisk myszy menu kontekstowe z Przypisz Makro pojawi się.

Stamtąd wybierz Przypisz Makro .

⏩ A okno dialogowe z Przypisz Makro pojawi się.

Następnie należy wybrać Nazwa makra oraz Makra w .

⏩ Wybrałam Get_Reminder od Nazwa makra i wybrany VBA Mod.xlsm z Makra w .

Na koniec kliknij OK .

Następnie należy kliknąć na przycisk o nazwie Get_Reminder .

W związku z tym pokaże pole msg z reszta .

Możesz to zrobić dla wszystkich numery aby uzyskać reszta .

Read More: Funkcja VBA Format w Excelu (8 zastosowań z przykładami)

2. użycie odwołania do komórki w VBA Mod, aby uzyskać resztę

Poprzez zastosowanie Odniesienie do komórki z arkusza Excel, można uzyskać reszta z VBA Mod .

Aby otworzyć VBA edytor, wykonaj kroki wyjaśnione w sekcji 1.

Następnie wpisz następujący kod w Moduł .

 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 

Tutaj, w Reminder_Using_CellReference , zadeklarowałem zmienną n jako Integer i używał go do przechowywania wartości zwracanej przez Mod operator.

Następnie użyliśmy odwołania do komórki B4 jako liczba1 oraz C4 jako liczba2 (dzielnik)

Następnie użył MsgBox pokazać reszta .

Teraz, Zapisz kod i wróć do arkusza.

Aby włożyć Przycisk , wykonaj czynności opisane w punkcie 1.

➤ Nazwałem przycisk Odniesienie do komórki .

Następnie należy kliknąć na Przycisk uruchomić VBA kod.

Dlatego dostaniesz reszta dla używanego odnośnika do komórki.

Related Content: Jak zwrócić wartość w funkcji VBA (zarówno wartości tablicowe jak i nie tablicowe)

3. użycie VBA Mod do uzyskania reszty z liczby ujemnej

Na stronie VBA Mod obsługuje również negatywny numery podczas obliczania reszta .

Aby otworzyć VBA edytor, wykonaj kroki wyjaśnione w sekcji 1.

Następnie wpisz następujący kod w Moduł .

 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 

Tutaj, w Reminder_From_NegativeNumber, Zadeklarowałem zmienną n jako Integer i używał go do przechowywania wartości zwracanej przez Mod operator.

Następnie użyliśmy odwołania do komórki B5 jako liczba1 oraz C5 jako liczba2 (dzielnik)

Następnie użył MsgBox pokazać reszta .

Teraz, Zapisz kod i wróć do arkusza.

Aby włożyć Guzik, wykonać czynności opisane w rozdziale 1.

➤ Nazwałem przycisk Przypomnienie o liczbie ujemnej .

Następnie należy kliknąć na Przycisk uruchomić VBA kod.

Dlatego dostaniesz reszta dla liczba ujemna .

Read More: Jak używać funkcji VBA IsNumeric (9 przykładów)

4. użycie VBA Mod do uzyskania reszty w komórce

Zamiast pokazywać reszta przez msg skrzynka możesz umieścić go w komórce za pomocą VBA MOD funkcja.

Aby otworzyć VBA edytor, wykonaj kroki wyjaśnione w sekcji 1.

Następnie wpisz następujący kod w Moduł .

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

Tutaj, w s ub-procedura Przypomnienie_w_Cell , użyłem ActiveCell.FormulaR1C1 format, aby uzyskać pozycję ActiveCell .

Następnie, użył MOD funkcja, aby uzyskać reszta .

Użyto również Wybierz metoda.

Teraz, Zapisz kod i wróć do arkusza.

Aby włożyć Przycisk oraz przypisać the VBA kod postępuj zgodnie z krokami wyjaśnionymi w sekcji 1.

➤ Nazwałem przycisk Przypomnienie w komórce .

Następnie należy wybrać D4 komórka.

Następnie należy kliknąć na Przycisk uruchomić VBA kod.

W rezultacie otrzymasz. reszta w wybranej komórce.

Wykonując ten sam proces, otrzymasz reszta dla pozostałych numerów.

Read More: Jak używać funkcji MsgBox w Excelu VBA (Kompletny przewodnik)

5. użycie VBA Mod z Integer Divisor & Float Number

W przypadku, gdy twój dzielnik jest liczba całkowita ale twój numer jest w float to możesz użyć VBA Mod operator.

Aby otworzyć VBA edytor, wykonaj kroki wyjaśnione w sekcji 1.

Następnie wpisz następujący kod w Moduł .

 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 

W tym miejscu, w R podprocedura eminder_From_Decimal_Number, Zadeklarowałem zmienną n jako Integer i używał go do przechowywania wartości zwracanej przez Mod operator.

Następnie użyliśmy odwołania do komórki B5 jako liczba1 oraz C5 jako liczba2 (dzielnik)

Następnie użył MsgBox pokazać reszta .

Teraz, Zapisz kod i wróć do arkusza.

Aby włożyć Przycisk , wykonaj czynności opisane w punkcie 1.

➤ Nazwałem przycisk Przypomnienie z liczby dziesiętnej .

Następnie należy kliknąć na Przycisk uruchomić VBA kod.

Dlatego dostaniesz reszta dla liczba dziesiętna .

Ale jest pewien problem, który VBA zaokrągla w górę the decimal . Tutaj, wynik miał być 2.25 ale VBA Mod zaokrąglił ją do 2 .

Pamiętaj, że jeśli jakikolwiek dziesiętny/pływający punkt jest większy niż 0.5 w VBA Mod to będzie to zaokrąglony do następnej wartości całkowitej.

Jeśli jest mniejsza niż 0.5 w VBA Mod , wówczas będzie to. zaokrąglony do istniejącej wartości całkowitej.

Read More: Jak używać funkcji VBA Int w Excelu ( 3 przykłady)

Podobne Lektury:

  • Jak używać funkcji IsNull w Excelu VBA (5 przykładów)
  • Użyj funkcji VBA Str w Excelu (4 przykłady)
  • Jak używać funkcji przełącznika VBA (6 odpowiednich przykładów)
  • Użyj funkcji VBA Len w Excelu (4 przykłady)
  • Jak usunąć duplikaty w arkuszu Excela (7 metod)

6. użycie VBA Mod When Divisor & Number Are Both Decimals

Jeśli twój dzielnik oraz numer oba są w decimal/float to możesz również użyć VBA Mod operator.

Aby otworzyć VBA edytor, wykonaj kroki wyjaśnione w sekcji 1.

Następnie wpisz następujący kod w Moduł .

 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 

Tutaj, w podprocedura Liczba_Dziesiętna_Dwumianowa, Zadeklarowałem zmienną n jako Integer i używał go do przechowywania wartości zwracanej przez Mod operator.

Następnie użyliśmy odwołania do komórki B5 jako liczba1 oraz C5 jako liczba2 (dzielnik)

Następnie użył MsgBox pokazać reszta .

Teraz, Zapisz kod i wróć do arkusza.

Aby włożyć Guzik, wykonać czynności opisane w rozdziale 1.

➤ Nazwałem przycisk Wejdź na stronę Przypomnienie od kiedy dzielnik & liczba dziesiętna .

Następnie należy kliknąć na Przycisk uruchomić VBA kod.

Dlatego dostaniesz reszta dla obu dzielnik dziesiętny oraz numery .

Ale jest pewien problem, który VBA zaokrągla się decimal . Tutaj, wynik miał być 1.75 ale VBA Mod zaokrąglił ją do 2 .

Related Content: VBA Funkcja EXP w Excelu (5 przykładów)

7. mod VBA do zaokrąglania liczby dziesiętnej większej niż 0,5

Tutaj pokażę ci, jak zaokrąglenie pracuje w VBA Mod .

Aby zademonstrować ci decimal problem punktowy, najpierw obliczę reszta przy użyciu programu Excel MOD funkcja.

W komórce D4 , wpisz następujący wzór,

=MOD(B6, C6)

Tutaj użyłem B6 jako numer C6 jako dzielnik .

Następnie naciśnij ENTER aby uzyskać reszta i dostaniesz reszta który będzie 7.7 .

Teraz, obliczmy przez VBA Mod , aby otworzyć VBA redaktor postępuje zgodnie z krokami opisanymi w rozdziale 1.

Następnie wpisz następujący kod w Moduł .

 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 

Tutaj, w podprocedura Liczba_Dziesiętna_Dwumianowa, Zadeklarowałem zmienną n jako Integer i używał go do przechowywania wartości zwracanej przez Mod operator.

Następnie użyliśmy odwołania do komórki B6 jako liczba1 oraz C6 jako liczba2 (dzielnik)

Następnie użył MsgBox pokazać reszta .

Teraz, Zapisz kod i wróć do arkusza.

Aby włożyć Przycisk , wykonaj czynności opisane w punkcie 1.

➤ Nazwałem przycisk RoundsUp Liczba dziesiętna .

Następnie należy kliknąć na Przycisk uruchomić VBA kod.

Dlatego dostaniesz reszta dla używanego odnośnika do komórki.

Przyjrzyj się uważnie reszta że VBA Mod wrócił. MOD dla tych samych wartości zwracanych 7.7 ale VBA Mod operator zwrócony 0 . jak VBA zaokrąglił wartości.

Read More: Jak używać funkcji VBA Round w Excelu (6 szybkich zastosowań)

8) Ustalenie liczby parzystej lub nieparzystej

Na stronie VBA Mod określa również Nawet lub Odd liczba z podanego zakresu.

Aby otworzyć VBA edytor, wykonaj kroki wyjaśnione w sekcji 1.

Następnie wpisz następujący kod w Moduł .

 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 & " jest liczbą parzystą!" Else MsgBox n & " jest liczbą nieparzystą!" End If Next n End Sub. 

Tutaj, w podprocedura Określenie_Nawet_Od, Zadeklarowałem zmienną n jako Integer .

Następnie użyłem Dla pętla, w której przechowywałem wartość, którą zadeklarowałem poprzez odniesienie do komórki.

Następnie użyłem JEŚLI funkcja, w której ustawiam kryteria jako n Mod 2 = 0 jeśli wartość jest prawdziwa, to zwróci an Nawet oświadczenie inaczej Odd .

Następnie użył MsgBox pokazać oświadczenia .

Teraz, Zapisz kod i wróć do arkusza.

Aby włożyć Przycisk , wykonaj czynności opisane w punkcie 1.

➤ Nazwałem przycisk Parzyste lub nieparzyste .

Następnie należy kliknąć na Przycisk uruchomić VBA kod.

Dlatego też dowiesz się, która wartość jest Nawet i który z nich jest Odd .

Tutaj, 1 to Odd numer.

Tutaj, 2 to Nawet numer.

Read More: VBA If - Then - Else Statement w Excelu (4 przykłady)

9. użycie zakresu komórek w VBA Mod, aby uzyskać resztę

Można również użyć zakres komórek aby uzyskać reszta poprzez użycie VBA Mod .

Aby otworzyć VBA edytor, wykonaj kroki wyjaśnione w sekcji 1.

Następnie wpisz następujący kod w Moduł .

 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 

Tutaj, w Podprocedura Get_Reminder_UsingVBA, Zadeklarowałem zmienną n jako Integer .

Następnie, użyłem Dla pętla, w której przechowywałem wartość, którą zadeklarowałem poprzez odniesienie do komórki. Pętla będzie działać dla wartości z wierszy 4 do 9 .

Następnie użył MsgBox pokazać reszta .

Teraz, Zapisz kod i wróć do arkusza.

Aby włożyć Przycisk , wykonaj czynności opisane w punkcie 1.

➤ Nazwałem przycisk Dynamiczne odniesienie do komórki .

Następnie należy kliknąć na Przycisk uruchomić VBA kod.

Dlatego dostaniesz reszta dla wszystkich używanych wartości po kolei.

Pierwszy z nich jest dla numer 29 gdzie dzielnik jest 3 .

Drugi jest dla numer -47 gdzie dzielnik jest 5 .

Pętla będzie działała do momentu, gdy osiągnie rząd 9 Piąty jest dla numer 59 gdzie dzielnik jest 6 .

Related Content: Jak używać funkcji VBA Randomize w Excelu (5 przykładów)

Różnica między MOD Excela & VBA Mod

Chociaż dla większości przypadków wartości zwracane są takie same dla MOD funkcja i VBA Mod operator a jednak dla niektórych przypadków wynik różni się od siebie. Pozwól, że pokażę Ci różnicę między nimi.

MOD Funkcja VBA Mod Operator
Na stronie MOD funkcja zwraca zarówno Integer oraz W systemie dziesiętnym numery. Mod operator zwraca tylko Integer numery.
Podczas korzystania z negatywny numer w MOD nie zwraca znak ujemny . Obsługuje on negatywny a następnie zwraca znak ujemny .

Rzeczy do zapamiętania

🔺 Operator zaokrągli się dziesiętny/pływający pkt.

Część ćwiczeniowa

W zeszycie ćwiczeń zamieściłem arkusz do przećwiczenia tych wyjaśnionych przykładów.

Wniosek

W tym artykule pokazałem 9 przykładów wykorzystania Excela VBA Mod operator. starałem się również pokryć przyczyny częstego pokazywania błędów. wraz z rzeczami, o których będziesz musiał pamiętać podczas używania operatora. zapraszam do komentowania poniżej dla wszelkiego rodzaju zapytań i sugestii.

Hugh West jest bardzo doświadczonym trenerem i analitykiem Excela z ponad 10-letnim doświadczeniem w branży. Posiada tytuł licencjata w dziedzinie rachunkowości i finansów oraz tytuł magistra administracji biznesowej. Hugh ma pasję do nauczania i opracował unikalne podejście do nauczania, które jest łatwe do naśladowania i zrozumienia. Jego specjalistyczna wiedza na temat programu Excel pomogła tysiącom studentów i profesjonalistów na całym świecie doskonalić swoje umiejętności i osiągać doskonałe wyniki w karierze. Za pośrednictwem swojego bloga Hugh dzieli się swoją wiedzą ze światem, oferując bezpłatne samouczki programu Excel i szkolenia online, aby pomóc osobom indywidualnym i firmom w pełni wykorzystać swój potencjał.