Λειτουργία VBA Ή (Παραδείγματα) | Πώς να χρησιμοποιήσετε Ή λογικό χειριστή στο VBA;

Ή είναι μια λογική συνάρτηση σε οποιαδήποτε από τις γλώσσες προγραμματισμού και παρόμοια στο VBA έχουμε συνάρτηση OR, καθώς είναι μια λογική συνάρτηση, το αποτέλεσμα που δίνεται από αυτήν τη συνάρτηση είναι είτε αληθές είτε ψευδές, αυτή η λειτουργία χρησιμοποιείται για δύο ή πολλές συνθήκες μαζί και δίνει μας αληθινό αποτέλεσμα όταν κάποια από τις προϋποθέσεις επιστρέφεται αληθινή.

Τι είναι η λειτουργία OR στο VBA;

Στο excel, οι λογικές λειτουργίες είναι η καρδιά των τύπων που χρησιμοποιούμε καθημερινά. Υπάρχουν λογικές συναρτήσεις για τη διεξαγωγή της λογικής δοκιμής και δίνει αποτέλεσμα σε Boolean τύπο δεδομένων, δηλαδή είτε TRUE είτε FALSE. Μερικοί από τους λογικούς τύπους στο excel είναι "IF, IFERROR in excel, ISERROR in excel, AND και OR excel function". Ελπίζω να τα έχετε χρησιμοποιήσει αρκετά συχνά ως λειτουργία φύλλου εργασίας. Και στο VBA μπορούμε να τα χρησιμοποιήσουμε όλα και σε αυτό το άρθρο, θα σας εξηγήσουμε τους τρόπους χρήσης της λειτουργίας "VBA Ή".

Ποιο είναι το πρώτο πράγμα που έρχεται στο μυαλό σας όταν σκέφτεστε τη λέξη «Ή»;

Με απλούς όρους «OR» σημαίνει «είτε αυτό είτε αυτό»

Με την ίδια ιδέα, το OR είναι μια λογική συνάρτηση που δίνει το αποτέλεσμα ως ΑΛΗΘΕ, εάν οποιαδήποτε από τις λογικές δοκιμές είναι ΑΛΗΘΗ και δίνει το ΛΑΘΟΣ ως αποτέλεσμα, εάν καμία από τις λογικές δοκιμές δεν είναι ΑΛΗΘΕΙΑ.

Αυτό λειτουργεί ακριβώς απέναντι από τη λειτουργία VBA AND. Η συνάρτηση AND επιστρέφει ΑΛΗΘΕΙΑ μόνο εάν όλες οι λογικές συνθήκες είναι ΑΛΗΘΕΣ, εάν κάποια από τις συνθήκες δεν ικανοποιείται, τότε θα έχουμε ΛΑΘΟΣ ως αποτέλεσμα.

Τύπος της λειτουργίας VBA Ή

Επιτρέψτε μου να διαμορφώσω μια σύνταξη για να κατανοήσετε τη λειτουργία.

[Λογική δοκιμή] Ή [Λογική δοκιμή] Ή [Λογική δοκιμή]

Πρώτον, πρέπει να αναφέρουμε ποια είναι η λογική δοκιμή και μετά να αναφέρουμε τη λέξη Ή, στη συνέχεια, να αναφέρουμε ποια είναι η δεύτερη λογική δοκιμή Εάν επιθυμείτε να πραγματοποιήσετε μια πιο λογική δοκιμή, τότε αναφέρετε τη λέξη Ή μετά από κάθε λογική δοκιμή.

Από όλες τις λογικές δοκιμές που κάνετε, εάν κάποιος από τους ελέγχους είναι ικανοποιημένος ή αληθινός, τότε θα έχουμε το αποτέλεσμα ως Αληθινό εάν κανένα ή ικανοποιημένο, τότε το αποτέλεσμα είναι ΛΑΘΟΣ.

Παραδείγματα χρήσης της λειτουργίας OR στη VBA

Θα σας δείξουμε ένα απλό παράδειγμα χρήσης της συνάρτησης OR στο VBA.

Μπορείτε να κατεβάσετε αυτό το Πρότυπο VBA Ή Excel εδώ - Πρότυπο VBA Ή Excel

Για να κατανοήσω τη λογική συνάρτηση VBA Ή επιτρέψτε μου να σας δώσω ένα παράδειγμα. Ας υποθέσουμε ότι θέλουμε να πραγματοποιήσουμε τη λογική δοκιμή εάν ο αριθμός 25 είναι μεγαλύτερος από 20 ή ο αριθμός 50 είναι μικρότερος από 30.

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

Βήμα 2: Ορίστε τη μεταβλητή ως συμβολοσειρά.

Κώδικας:

 Sub OR_Example1 () Dim i As String End Sub 

Βήμα 3: Τώρα για αυτήν τη μεταβλητή, θα εκχωρήσουμε την τιμή μέσω του λογικού ελέγχου OR.

Κώδικας:

 Sub OR_Example1 () Dim i As String i = End Sub 

Βήμα 4: Η πρώτη μας λογική δοκιμή είναι 25> 20 .

Κώδικας:

 Sub OR_Example1 () Dim i As String i = 25> 20 End Sub 

Βήμα 5: Τώρα μετά την πρώτη λογική δοκιμή αναφέρετε τη λέξη OR και εισαγάγετε τη δεύτερη λογική δοκιμή.

Κώδικας:

 Sub OR_Example1 () Dim i As String i = 25> 20 ή 50 <30 End Sub 

Βήμα 6: Εντάξει, τώρα η λειτουργία VBA OR ελέγχει αν οι λογικές δοκιμές είναι ΑΛΗΘΕΣ ή ΛΑΘΟΣ. Τώρα αντιστοιχίστε το αποτέλεσμα της μεταβλητής στο πλαίσιο μηνυμάτων VBA .

Κώδικας:

 Sub OR_Example1 () Dim i As String i = 25> 20 ή 50 <30 MsgBox i End Sub 

Βήμα 7: Εκτελέστε τη μακροεντολή και ποιο είναι το αποτέλεσμα.

Πήραμε το αποτέλεσμα ως ΑΛΗΘΕΙ, επειδή από δύο λογικές δοκιμές έχουμε παράσχει ότι μία δοκιμή είναι ΑΛΗΘΕΙΑ, έτσι το αποτέλεσμα είναι ΑΛΗΘΕ.

Το 25 είναι μεγαλύτερο από 20 και το 50 δεν είναι μικρότερο από 30, στην περίπτωση αυτή, η πρώτη λογική δοκιμή είναι ΑΛΗΘΗ αλλά η δεύτερη είναι ΛΑΘΟΣ. Επειδή έχουμε εφαρμόσει τη συνάρτηση VBA Ή, χρειάζεται οποιαδήποτε από τις προϋποθέσεις για να είναι ΑΛΗΘΕΣ για να πάρει το αποτέλεσμα ως ΑΛΗΘΕ.

Τώρα, δείτε τον παρακάτω κώδικα.

Κώδικας:

 Sub OR_Example1 () Dim i As String i = 25 = 20 ή 50 = 30 MsgBox i End Sub 

Έχω αλλάξει τις λογικές εξισώσεις δοκιμής από το σύμβολο> και <στο ίσο (=). Αυτό θα επιστρέψει FALSE ως αποτέλεσμα, επειδή το 25 δεν είναι ίσο με το 20 και το 50 δεν είναι ίσο με το 30.

Η λειτουργία VBA Ή με λειτουργία IF είναι ισχυρή

Όπως είπα Ή το αποτέλεσμα μπορεί να επιστρέψει ΑΛΗΘΕΙΑ ή ΛΑΘΟΣ, αλλά με την άλλη λογική συνάρτηση «IF», ​​μπορούμε να χειριστούμε τα αποτελέσματα σύμφωνα με τις ανάγκες μας.

Κάντε τα ίδια λογικά τεστ από ψηλά, το OR επέστρεψε μόνο TRUE ή FALSE, αλλά ας συνδυάσουμε αυτό το OR με το IF.

Βήμα 1: Πριν από τη διεξαγωγή οποιασδήποτε δοκιμής, ανοίξτε τη λειτουργία IF .

Κώδικας:

 Sub OR_Example2 () Dim i As String IF End Sub 

Βήμα 2: Τώρα πραγματοποιήστε δοκιμές χρησιμοποιώντας τη συνάρτηση OR .

Κώδικας:

 Sub OR_Example2 () Dim i As String IF 25 = 20 Or 50 = 30 End Sub 

Βήμα 3: Βάλτε τη λέξη "Τότε" και γράψτε το αποτέλεσμα εάν η συνθήκη είναι ΑΛΗΘΕΙΑ, αντιστοιχίστε την τιμή στη μεταβλητή ως "Η κατάσταση είναι ικανοποιημένη" .

Κώδικας:

 Sub OR_Example2 () Dim i As String If 25 = 20 Or 50 = 30 then i = "Η κατάσταση ικανοποιείται" End Sub 

Βήμα 4: Εάν η συνθήκη είναι FALSE τότε χρειαζόμαστε ένα διαφορετικό αποτέλεσμα, οπότε βάλτε τη λέξη "ELSE" και στην επόμενη γραμμή αντιστοιχίστε την τιμή στη μεταβλητή "ποιο θα πρέπει να είναι το αποτέλεσμα εάν η συνθήκη ή η λογική δοκιμή είναι FALSE".

Κώδικας:

 Sub OR_Example2 () Dim i As String If 25 = 20 Or 50 = 30 Then i = "Η κατάσταση είναι ικανοποιημένη" Άλλο i = "Η συνθήκη δεν ικανοποιείται" End Sub 

Βήμα 5: Τερματίστε τη συνάρτηση IF με τη λέξη "End If" .

Κώδικας:

 Sub OR_Example2 () Dim i As String If 25 = 20 Or 50 = 30 then i = "Η κατάσταση είναι ικανοποιημένη" Άλλο i = "Η κατάσταση δεν ικανοποιείται" 

Βήμα 6: Αντιστοιχίστε την τιμή του μεταβλητού αποτελέσματος στο πλαίσιο μηνύματος .

Κώδικας:

 Sub OR_Example2 () Dim i As String If 25 = 20 Or 50 = 30 Then i = "Η κατάσταση είναι ικανοποιημένη" Άλλο i = "Η συνθήκη δεν είναι ικανοποιημένη" Τέλος εάν MsgBox i End Sub 

Εκτελέστε τη μακροεντολή, εάν η λογική δοκιμή είναι ΑΛΗΘΕΙΑ, θα έχουμε το αποτέλεσμα ως "Η κατάσταση είναι ικανοποιημένη" ή αλλιώς θα λάβουμε "Η κατάσταση δεν είναι ικανοποιημένη".

Έχουμε το αποτέλεσμα ως "Η κατάσταση δεν είναι ικανοποιημένη" επειδή και οι δύο λογικές δοκιμές είναι ΛΑΘΟΣ.

Τώρα θα αλλάξω τα λογικά τεστ.

Κώδικας:

 Sub OR_Example2 () Dim i As String If 25> 20 or 50 <30 Then i = "Η κατάσταση είναι ικανοποιημένη" Άλλο i = "Η συνθήκη δεν ικανοποιείται" Τέλος εάν MsgBox i End Sub 

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

Έτσι, μπορούμε να χρησιμοποιήσουμε μία λογική συνάρτηση με άλλες λογικές συναρτήσεις για να φτάσουμε στα αποτελέσματα.

Λύστε την παρακάτω μελέτη περίπτωσης για να συνηθίσετε τις λογικές συναρτήσεις.

Μελέτη περίπτωσης προς επίλυση

Έχω ονόματα υπαλλήλων και τα αντίστοιχα τμήματα τους.

Εάν έχετε δοκιμάσει και δεν βρείτε το αποτέλεσμα, τότε μπορείτε να ανατρέξετε στον παρακάτω κώδικα για να κατανοήσετε τη λογική.

Κώδικας:

 Υπο Bonus_ Υπολογισμός () Dim i As Long for i = 2 to 10 If Cells (i, 2). Value = "Finance" Or Cells (i, 2). Value = "IT" Then Cells (i, 3). Value = 5000 Else Cells (i, 3). Τιμή = 1000 End if Next i End Sub 

Εάν ο υπάλληλος προέρχεται από «Οικονομικά» ή «IT», τότε θα πρέπει να λάβουν το μπόνους ως «5000». Για άλλους υπαλλήλους του τμήματος, το μπόνους είναι «1000».

Πραγματοποιήστε τη λογική δοκιμή και φτάστε στα αποτελέσματα.