Συμβάντα στο Excel

Ο όρος "Εκδήλωση Excel» χρησιμοποιείται για να υποδείξει ορισμένες ενέργειες που εκτελούνται από τον χρήστη στο Excel. Για παράδειγμα, όταν ένας χρήστης αλλάζει ένα φύλλο βιβλίου εργασίας, αυτό είναι ένα συμβάν. Η εισαγωγή δεδομένων σε ένα κελί ή η αποθήκευση ενός βιβλίου εργασίας είναι επίσης συμβάντα του Excel.

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

Για παράδειγμα, για να εκτελείτε μια μακροεντολή κάθε φορά που ο χρήστης αλλάζει ένα φύλλο εργασίας σε ένα βιβλίο εργασίας του Excel, θα δημιουργήσετε κώδικα VBA που θα εκτελείται κάθε φορά που συμβαίνει το συμβάν SheetActivate ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΙΩΝ.

Και αν θέλετε η μακροεντολή να εκτελείται κάθε φορά που πηγαίνετε σε ένα συγκεκριμένο φύλλο εργασίας (για παράδειγμα, Sheet1), τότε ο κωδικός VBA πρέπει να συσχετιστεί με το συμβάν Θέτω εις ενέργειαν για αυτό το φύλλο.

Ο κώδικας VBA που προορίζεται για τη διαχείριση συμβάντων του Excel πρέπει να τοποθετηθεί στο κατάλληλο αντικείμενο φύλλου εργασίας ή βιβλίου εργασίας στο παράθυρο του επεξεργαστή VBA (το πρόγραμμα επεξεργασίας μπορεί να ανοίξει κάνοντας κλικ Alt + F11). Για παράδειγμα, ο κώδικας που πρέπει να εκτελείται κάθε φορά που συμβαίνει ένα συγκεκριμένο συμβάν σε επίπεδο φύλλου εργασίας θα πρέπει να τοποθετείται στο παράθυρο κώδικα για αυτό το φύλλο εργασίας. Αυτό φαίνεται στο σχήμα:

Στο πρόγραμμα επεξεργασίας της Visual Basic, μπορείτε να προβάλετε το σύνολο όλων των συμβάντων του Excel που είναι διαθέσιμα σε επίπεδο βιβλίου εργασίας, φύλλου εργασίας ή γραφήματος. Ανοίξτε το παράθυρο κώδικα για το επιλεγμένο αντικείμενο και επιλέξτε τον τύπο αντικειμένου από το αριστερό αναπτυσσόμενο μενού στο επάνω μέρος του παραθύρου. Το δεξί αναπτυσσόμενο μενού στο επάνω μέρος του παραθύρου θα εμφανίσει τα συμβάντα που ορίζονται για αυτό το αντικείμενο. Το παρακάτω σχήμα δείχνει μια λίστα συμβάντων που σχετίζονται με ένα φύλλο εργασίας του Excel:

Συμβάντα στο Excel

Κάντε κλικ στο επιθυμητό συμβάν στο δεξί αναπτυσσόμενο μενού και μια διαδικασία θα εισαχθεί αυτόματα στο παράθυρο κώδικα για αυτό το αντικείμενο Σε. στην κεφαλή της διαδικασίας Σε Το Excel εισάγει αυτόματα τα απαιτούμενα ορίσματα (εάν υπάρχουν). Το μόνο που απομένει είναι να προσθέσετε τον κώδικα VBA για να καθορίσετε ποιες ενέργειες θα πρέπει να εκτελέσει η διαδικασία όταν εντοπιστεί το επιθυμητό συμβάν.

Παράδειγμα

Στο παρακάτω παράδειγμα, κάθε φορά που επιλέγεται ένα κελί B1 στο φύλλο εργασίας Sheet1 εμφανίζεται ένα πλαίσιο μηνύματος.

Για να εκτελέσουμε αυτήν την ενέργεια, πρέπει να χρησιμοποιήσουμε το συμβάν φύλλου εργασίας Επιλογή_Αλλαγή, που εμφανίζεται κάθε φορά που αλλάζει η επιλογή ενός κελιού ή μιας περιοχής κελιών. Λειτουργία Επιλογή_Αλλαγή λαμβάνει ως επιχείρημα στόχος αντικείμενο -. Έτσι γνωρίζουμε ποια περιοχή κελιών επιλέχθηκε.

Συμβάν Επιλογή_Αλλαγή εμφανίζεται με οποιαδήποτε νέα επιλογή. Αλλά χρειαζόμαστε το σύνολο των ενεργειών που πρέπει να εκτελεστεί μόνο όταν είναι επιλεγμένο το κελί B1. Για να γίνει αυτό, θα παρακολουθούμε το συμβάν μόνο στο καθορισμένο εύρος στόχος. Πώς υλοποιείται στον κώδικα προγράμματος που φαίνεται παρακάτω:

«Κωδικός για την εμφάνιση ενός πλαισίου μηνύματος όταν είναι επιλεγμένο το κελί B1» στο τρέχον φύλλο εργασίας. Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Ελέγξτε εάν το κελί B1 είναι επιλεγμένο Αν Target.Count = 1 Και Target.Row = 1 Και Target.Column = 2 Στη συνέχεια, "Εάν είναι επιλεγμένο το κελί B1, τότε κάντε το ακόλουθο MsgBox "Έχετε επέλεξε ένα κελί B1" End If End Sub

Αφήστε μια απάντηση