Χειριστής 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;

Μπορείτε να κατεβάσετε αυτό το Πρότυπο λειτουργίας VBA MOD εδώ - Πρότυπο λειτουργίας VBA MOD

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

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

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

Κώδικας:

 Υπο MOD 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 in 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 στη λειτουργία φύλλου εργασίας.