Χειριστής VBA MOD - Πώς να χρησιμοποιήσετε το Excel VBA Modulo; (Παραδείγματα)

Πίνακας περιεχομένων

Χειριστής Excel VBA MOD

Στο VBA MOD είναι το ίδιο με την εφαρμογή στα μαθηματικά, όταν ένας αριθμός διαιρείται από τον διαιρέτη του και λαμβάνουμε μια υπενθύμιση από αυτό το τμήμα, αυτή η συνάρτηση χρησιμοποιείται για να μας δώσει το υπόλοιπο από το τμήμα, δεν είναι μια συνάρτηση στο VBA μάλλον από ότι είναι χειριστής.

Το MOD δεν είναι τίποτα αλλά το MODULO είναι μια μαθηματική λειτουργία Είναι ακριβώς το ίδιο με τη διαίρεση, αλλά το αποτέλεσμα είναι ελαφρώς διαφορετικό όπου η διαίρεση παίρνει το διαιρεμένο ποσό, αλλά το MOD παίρνει το υπόλοιπο της διαίρεσης. Για παράδειγμα: Εάν διαιρέσετε 21 με 2, το αποτέλεσμα διαίρεσης είναι 10,50 με MOD είναι το υπόλοιπο της διαίρεσης, δηλαδή, 1. (Ο αριθμός 2 μπορεί να διαιρέσει μόνο 20, όχι 21, οπότε το υπόλοιπο είναι 1).

Στο κανονικό excel, είναι μια συνάρτηση, αλλά στο VBA, δεν είναι μια συνάρτηση. Είναι απλώς ένας μαθηματικός τελεστής. Σε αυτό το άρθρο, θα εξετάσουμε λεπτομερώς αυτόν τον τελεστή.

Σύνταξη

Απλώς για να σας υπενθυμίσω, αυτό δεν είναι συνάρτηση για σύνταξη. Για την κατανόηση του αναγνώστη μας, επιτρέψτε μου να το βάλω στη λέξη.

Number 1 MOD Number 2 (Διαχωριστικό)

Ο αριθμός 1 δεν είναι τίποτα άλλο από τον αριθμό που προσπαθούμε να διαιρέσουμε.

Αριθμός 2 αυτός είναι ο διαιρέτης, δηλαδή, θα διαιρέσουμε τον αριθμό 1 με αυτόν τον διαιρέτη.

MOD το αποτέλεσμα που δίνεται από τον αριθμό 1 / τον αριθμό 2.

Πώς να χρησιμοποιήσετε το MOD στο VBA;

Παράδειγμα # 1

Ακολουθήστε τα παρακάτω βήματα για να γράψετε τον κωδικό.

Βήμα 1: Δημιουργήστε ένα όνομα μακροεντολής.

Κώδικας:

Sub MOD_Example1 () End Sub

Βήμα 2: Ορίστε μία από τις μεταβλητές ως " Ακέραιος ".

Κώδικας:

Sub MOD_Example1 () Dim i As Integer End Sub

Βήμα 3: Τώρα εκτελέστε τον υπολογισμό ως "i = 20 MOD 2."

Όπως είπα στην αρχή, το MOD είναι ένας χειριστής, όχι μια συνάρτηση. Έτσι, έχω χρησιμοποιήσει τη λέξη MOD, όπως τον τρόπο εισαγωγής συν (+).

Κώδικας:

Sub MOD_Example1 () Dim i As Integer i = 21 Mod 2 End Sub

Βήμα 4: Τώρα αντιστοιχίστε την τιμή του "I" στο πλαίσιο μηνυμάτων.

Κώδικας:

Sub MOD_Example1 () Dim i As Integer i = 21 Mod 2 MsgBox i End Sub

Βήμα 5: Εκτελέστε το πλαίσιο μηνύματος κώδικα που θα εμφανίσει την τιμή του "I."

Παράδειγμα # 2

Το Mod στο VBA επιστρέφει πάντα μια ακέραια τιμή, δηλαδή, χωρίς δεκαδικά, εάν παρέχετε τον αριθμό σε δεκαδικά. Για παράδειγμα, δείτε τον παρακάτω κώδικα.

Κώδικας:

Sub MOD_Example2 () Dim i As Integer i = 26.25 Mod 3 MsgBox i End Sub

Το Divisor 3 μπορεί να διαιρέσει 24, οπότε το υπόλοιπο εδώ είναι 2,25, αλλά ο τελεστής MOD επιστρέφει την ακέραια τιμή, δηλαδή 2, όχι 2,25.

Τώρα θα τροποποιήσω τον αριθμό σε 26,51 και θα δω τη διαφορά.

Κώδικας:

Sub MOD_Example2 () Dim i As Integer i = 26.51 Mod 3 MsgBox i End Sub

Θα τρέξω αυτόν τον κωδικό και θα δω ποιο είναι το αποτέλεσμα.

Ουάου!!! Έχουμε μηδέν ως απάντηση. Ο λόγος που πήραμε μηδέν επειδή το VBA στρογγυλοποιεί τους αριθμούς όπως κάνουν οι τραπεζίτες μας, δηλαδή, οποιοδήποτε δεκαδικό σημείο που είναι μεγαλύτερο από 0,5 θα στρογγυλοποιηθεί στην επόμενη ακέραια τιμή. Έτσι, σε αυτήν την περίπτωση, το 26,51 στρογγυλοποιείται στο 27.

Δεδομένου ότι το 3 μπορεί να διαιρέσει το 27 με το 9, δεν θα έχουμε υπόλοιπες τιμές, οπότε η τιμή του i είναι ίση με το μηδέν.

Τώρα θα δώσω την τιμή του διαιρέτη και σε δεκαδικά ψηφία.

Κώδικας:

Sub MOD_Example2 () Dim i As Integer i = 26.51 Mod 3.51 MsgBox i End Sub

Βήμα 6: Εκτελέστε αυτόν τον κώδικα και δείτε τι είναι το αποτέλεσμα.

Λάβαμε 3 ως την απάντηση, επειδή το 26,51 θα στρογγυλοποιηθεί στο 27 και η τιμή του διαιρέτη 3,51 θα στρογγυλοποιηθεί στο 4.

Αν λοιπόν διαιρέσετε 27 με 4 το υπόλοιπο είναι 3.

Λειτουργία Excel MOD έναντι χειριστή MOD VBA

Βήμα 1: Τώρα, ρίξτε μια ματιά στη διαφορά μεταξύ του Excel και του χειριστή VBA MOD. Έχω τιμή 54,24 και η τιμή του διαιρέτη είναι 10.

Βήμα 2: Τώρα, εάν εφαρμόσω τη συνάρτηση MOD, θα λάβω το αποτέλεσμα ως 4.25.

Βήμα 3: Αλλά αν κάνετε την ίδια λειτουργία με το VBA, θα λάβουμε 4 ως το υπόλοιπο, όχι το 4.25.

Κώδικας:

Sub MOD_Example2 () Dim i As Integer i = 54.25 Mod 10 MsgBox i End Sub

Βήμα 4: Εκτελέστε αυτόν τον κώδικα και δείτε τι είναι το αποτέλεσμα.

Πράγματα που πρέπει να θυμάστε

  • Δεν είναι συνάρτηση, αλλά είναι αριθμητικός τελεστής.
  • Πρόκειται για στρογγυλοποίηση και στρογγυλοποιεί τις δεκαδικές τιμές, σε αντίθεση με τη λειτουργία MOD στη λειτουργία φύλλου εργασίας.

ενδιαφέροντα άρθρα...