Εάν βρίσκεστε εδώ, πιθανότατα θέλετε να μάθετε πώς να τρέχετε μια υπορουτίνα κάθε φορά που γίνεται αλλαγή σε ένα συγκεκριμένο φύλλο. Αυτό το άρθρο θα διδάξει ακριβώς αυτό. Ας ξεκινήσουμε λοιπόν.
Η σύνταξη για το χειριστή αλλαγής φύλλου εργασίας είναι:
Private Sub worksheet_change (ByVal Target As Range) 'your code' 'End Sub
Αυτός ο κωδικός πρέπει να γραφτεί σε ένα αντικείμενο φύλλου εργασίας για να λειτουργήσει και όχι σε μια κανονική ενότητα.
Private Sub worksheet_change (ByVal Target As Range) Msgbox "Ενημερώσατε κάτι σε αυτό το φύλλο" Τέλος υπο
Εάν έχετε αυτόν τον κωδικό στο φύλλο 1 και γράψετε ή διαγράψετε κάτι στο φύλλο 1, θα εμφανιστεί το μασάζ με την ένδειξη "Ενημερώσατε κάτι σε αυτό το φύλλο".
Δεν θα λειτουργήσει σε κανονικές ενότητες. Μπορείτε όμως να καλέσετε υπορουτίνες από οποιαδήποτε ενότητα. Το ίδιο θα κάνουμε και σε αυτή τη συνεδρία.
Σενάριο:
Εκτελέστε το Μακροεντολή του Excel εάν πραγματοποιείται οποιαδήποτε αλλαγή στο φύλλο εργασίας
Έτσι, ας πούμε ότι έχουμε μια μακροεντολή που αλλάζει το χρώμα των κελιών με βάση κάποια συνθήκη. Ακριβώς όπως η υπό όρους διαμόρφωση του Excel. Η μόνη διαφορά είναι ότι το χρώμα των κελιών αλλάζει όταν εκτελούμε αυτόν τον κώδικα VBA χρησιμοποιώντας ένα κουμπί ή μια εντολή εκτέλεσης, όχι όταν αλλάζουν οι τιμές. Θέλουμε να εκτελείται η μακροεντολή κάθε φορά που πραγματοποιείται αλλαγή στο φύλλο. Εδώ τα VBA Events θα σας βοηθήσουν. Τώρα για να το κάνουμε αυτό, θα χρησιμοποιήσουμε το συμβάν αλλαγής φύλλου εργασίας.
Ακολουθήστε αυτά τα βήματα:
- Μεταβείτε στο πρόγραμμα εξερεύνησης έργου και κάντε διπλό κλικ στο φύλλο στο οποίο θέλετε να ενεργοποιήσετε το συμβάν φύλλου εργασίας. Θέλω να ενεργοποιήσω το συμβάν όταν γίνουν κάποιες αλλαγές στο Sheet2, οπότε κάνω διπλό κλικ στο Sheet2. Μπορείτε επίσης να κάνετε δεξί κλικ και να κάνετε κλικ στον κώδικα προβολής για να ανοίξετε την περιοχή γραφής κώδικα για αντικείμενα φύλλου. Στην περιοχή κώδικα, γράψτε αυτήν τη γραμμή κώδικα.
Private Sub Worksheet_Change (ByVal Target As Range) End Sub
worksheet_change (Target as Range) είναι μια διατηρημένη υπορουτίνα που εκτελείται όταν γίνεται αλλαγή στο φύλλο κώδικα που περιέχει.
Όταν γράψετε αυτόν τον κώδικα, θα δείτε το αντικείμενο να αλλάζει στο φύλλο εργασίας. Δείτε το αναπτυσσόμενο μενού επάνω αριστερά. Στο αναπτυσσόμενο μενού επάνω δεξιά, το συμβάν είναι "αλλαγή".
Εάν χρησιμοποιήσετε το αναπτυσσόμενο μενού και επιλέξετε το φύλλο εργασίας στο αριστερό αναπτυσσόμενο μενού, όλα τα διαθέσιμα συμβάντα θα εμφανιστούν στο δεξιό αναπτυσσόμενο μενού. Όποιο αναπτυσσόμενο μενού επιλέξετε, ο κωδικός για αυτό το συμβάν θα γραφτεί αυτόματα. Απλώς πρέπει να το συμπληρώσετε με τις προσαρμοσμένες υπορουτίνες σας. - Τώρα απλώς τοποθετήστε τον κωδικό σας σε αυτό το τμήμα. Θέλω να καλέσω την υπορουτίνα μου που βρίσκεται σε μια ενότητα. Οπότε απλώς αποκαλώ αυτό το υποπρόγραμμα σε αυτό το φύλλο εργασίας χειριστή συμβάντων. Η υπορουτίνα μου είναι FormatUsingVBA () στο Module1
Private Sub worksheet_change (ByVal Target As Range) Μορφή κλήσης Χρησιμοποιώντας VBA End Sub
Τώρα, όποτε θα κάνουμε μια αλλαγή στο φύλλο2, θα εκτελεστεί η μακροεντολή FromatUsingVBA.
Λοιπόν, ναι, πώς μπορείτε να εκτελέσετε ένα σενάριο VBA όταν ένα φύλλο αλλάζει το περιεχόμενό του, χρησιμοποιώντας τον χειριστή αλλαγής συμβάντος φύλλου εργασίας. Ελπίζω να ήταν χρήσιμο. Εάν έχετε ερωτήσεις σχετικά με αυτόν τον χειριστή εκδηλώσεων, αναφέρετέ το στην ενότητα σχολίων.
Απλούστερος κώδικας VBA για να επισημάνετε τη χρήση της τρέχουσας γραμμής και στήλης| Χρησιμοποιήστε αυτό το μικρό απόσπασμα VBA για να επισημάνετε την τρέχουσα γραμμή και στήλη του φύλλου.
Οι εκδηλώσεις φύλλου εργασίας στο Excel VBA| Το συμβάν φύλλου εργασίας είναι πραγματικά χρήσιμο όταν θέλετε οι μακροεντολές σας να εκτελούνται όταν εμφανίζεται ένα συγκεκριμένο συμβάν στο φύλλο.
Εκτελέστε μακροεντολή εάν πραγματοποιηθεί οποιαδήποτε αλλαγή στο φύλλο σε καθορισμένο εύρος| Για να εκτελέσετε τον κώδικα μακροεντολής όταν αλλάζει η τιμή σε ένα καθορισμένο εύρος, χρησιμοποιήστε αυτόν τον κωδικό VBA. Εντοπίζει οποιαδήποτε αλλαγή πραγματοποιηθεί στο καθορισμένο εύρος και θα ενεργοποιήσει το συμβάν.
Δημοφιλή άρθρα:
50 συντομεύσεις Excel για να αυξήσετε την παραγωγικότητά σας | Γίνετε πιο γρήγοροι στην εργασία σας. Αυτές οι 50 συντομεύσεις θα σας κάνουν να εργάζεστε ακόμη πιο γρήγορα στο Excel.
Η συνάρτηση VLOOKUP στο Excel | Αυτή είναι μια από τις πιο δημοφιλείς και δημοφιλείς λειτουργίες του excel που χρησιμοποιείται για την αναζήτηση τιμών από διαφορετικά εύρη και φύλλα.
COUNTIF στο Excel 2016 | Μετρήστε τιμές με συνθήκες χρησιμοποιώντας αυτήν την εκπληκτική συνάρτηση. Δεν χρειάζεται να φιλτράρετε τα δεδομένα σας για να μετρήσετε συγκεκριμένη τιμή. Η λειτουργία Countif είναι απαραίτητη για την προετοιμασία του ταμπλό σας.
Πώς να χρησιμοποιήσετε τη συνάρτηση SUMIF στο Excel | Αυτή είναι μια άλλη βασική λειτουργία του ταμπλό. Αυτό σας βοηθά να συνοψίσετε τιμές υπό συγκεκριμένες συνθήκες.