Ρυθμίστε μορφοποίηση υπό όρους για μια περιοχή χρησιμοποιώντας VBA στο Microsoft Excel

Anonim

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

Χρησιμοποιήσαμε τυχαίους αριθμούς ως δείγματα δεδομένων για να αποδείξουμε τη λειτουργία της μακροεντολής.

Η μακροεντολή μπορεί να εκτελεστεί κάνοντας κλικ στο κουμπί "Εύρεση μέγ." Στο φύλλο "Κύριο".

Λογική εξήγηση

Δημιουργήσαμε τη μακροεντολή "ConditionalFormat" για να εφαρμόσουμε μορφοποίηση υπό όρους στην επιλεγμένη περιοχή. Αυτή η μακροεντολή επισημαίνει το κελί σε ιώδες χρώμα, το οποίο περιέχει τη μέγιστη τιμή στην επιλεγμένη περιοχή.

Πριν από την εκτέλεση αυτής της μακροεντολής, κάποιος πρέπει να επιλέξει μια περιοχή στην οποία θέλει να εφαρμόσει τη μορφοποίηση υπό όρους.

Για παράδειγμα, έχουμε επιλέξει μια περιοχή κελιών από το B9 έως το F17 ως το δείγμα των επιλεγμένων δεδομένων.

Κατά την εκτέλεση της μακροεντολής μετά την επιλογή περιοχής δείγματος, εφαρμόζεται μορφοποίηση υπό όρους στην επιλεγμένη περιοχή και το κελί D16, το οποίο περιέχει την υψηλότερη τιμή (97), θα επισημανθεί με ιώδες χρώμα.

Τώρα, πάρτε ένα άλλο δείγμα. Επιλέξαμε το εύρος από το κελί Β10 έως το F13 ως δεύτερη περιοχή δείγματος.

Αφού επιλέξετε τη δεύτερη περιοχή δείγματος, κάντε κλικ στο κουμπί "Εύρεση μέγ." Για να εκτελέσετε τη μακροεντολή. Θα εφαρμοστεί υπό όρους μορφοποίηση στην επιλεγμένη περιοχή και το κελί C11 θα επισημανθεί με ιώδες χρώμα, καθώς περιέχει τη μέγιστη τιμή (92) στην επιλεγμένη περιοχή.

Μετά την εκτέλεση της μακροεντολής για δύο διαφορετικά δείγματα, εφαρμόζεται υπό όρους μορφοποίηση και στα δύο. Στα δεδομένα του δείγματος, τόσο τα κελιά C11 όσο και το D16 θα επισημανθούν με ιώδες χρώμα, καθώς αντιπροσωπεύουν μέγιστες τιμές στα αντίστοιχα δείγματά τους.

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

Επεξήγηση κώδικα

Selection.FormatConditions.Delete

Ο παραπάνω κώδικας χρησιμοποιείται για τη διαγραφή τυχόν μορφοποίησης υπό όρους που εφαρμόζεται στα επιλεγμένα δεδομένα.

Selection.FormatConditions.Add Type: = xlExpression, Formula1: = _

"=" & Selection.Cells (1). Διεύθυνση (Λάθος, Λάθος) & "= MAX (" & Selection.Address & ")"

Ο παραπάνω κώδικας χρησιμοποιείται για την προσθήκη νέας μορφοποίησης υπό όρους. Ο τύπος καθορίζει ότι η έκφραση χρησιμοποιείται για την εφαρμογή της μορφοποίησης της συνθήκης. Ο τύπος της έκφρασης ορίζεται στον τύπο 1.

Επιλογή. Κελιά (1). Διεύθυνση (Λάθος, Λάθος)

Ο παραπάνω κώδικας χρησιμοποιείται για τη διεύθυνση αναφοράς του πρώτου κελιού στην επιλογή.

"=" & Selection.Cells (1). Διεύθυνση (Λάθος, Λάθος) & "= MAX (" & Selection.Address & ")"

Ο παραπάνω κώδικας χρησιμοποιείται για τη σύγκριση της τιμής του πρώτου επιλεγμένου κελιού με τη μέγιστη τιμή της επιλογής.

Selection.FormatConditions (1) .Interior.ColorIndex = 39

Ο παραπάνω κώδικας χρησιμοποιείται για την εκχώρηση ιώδους χρώματος στο κελί που πληροί τις προϋποθέσεις μορφοποίησης.

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

 Sub ConditionalFormat () Με την επιλογή "Διαγραφή τυχόν προηγούμενης μορφοποίησης υπό όρους .FormatConditions.Delete" προσθέστε μορφοποίηση υπό όρους σε επιλεγμένο κελί. , False) & "= MAX (" & Selection.Address & ")" 'Εκχώρηση βιολετί χρώματος για τη μορφοποίηση υπό όρους .FormatConditions (1) .Interior.ColorIndex = 39 Τέλος με τέλος υπο 

Αν σας άρεσε αυτό το blog, μοιραστείτε το με τους φίλους σας στο Facebook. Επίσης, μπορείτε να μας ακολουθήσετε στο Twitter και το Facebook.

Θα θέλαμε πολύ να σας ακούσουμε, ενημερώστε μας πώς μπορούμε να βελτιώσουμε το έργο μας και να το κάνουμε καλύτερο για εσάς. Γράψτε μας στον ιστότοπο email