Πώς να επισημάνετε την ενεργή γραμμή και στήλη στο Excel

  • Μοιραστείτε Αυτό
Michael Brown

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

Όταν βλέπετε ένα μεγάλο φύλλο εργασίας για μεγάλο χρονικό διάστημα, μπορεί τελικά να χάσετε την αίσθηση του πού βρίσκεται ο δρομέας σας και ποια δεδομένα βλέπετε. Για να ξέρετε ακριβώς πού βρίσκεστε κάθε στιγμή, βάλτε το Excel να επισημαίνει αυτόματα την ενεργή γραμμή και στήλη για εσάς! Φυσικά, η επισήμανση θα πρέπει να είναι δυναμική και να αλλάζει κάθε φορά που επιλέγετε ένα άλλο κελί. Ουσιαστικά, αυτό είναι που επιδιώκουμε να επιτύχουμε:

    Αυτόματη επισήμανση γραμμής και στήλης του επιλεγμένου κελιού με VBA

    Αυτό το παράδειγμα δείχνει πώς μπορείτε να επισημάνετε μια ενεργή στήλη και γραμμή προγραμματιστικά με τη VBA. Για το σκοπό αυτό, θα χρησιμοποιήσουμε την εντολή SelectionChange γεγονός της Φύλλο εργασίας αντικείμενο.

    Αρχικά, καθαρίζετε το χρώμα φόντου όλων των κελιών του φύλλου, ορίζοντας το ColorIndex σε 0. Και στη συνέχεια, επισημαίνετε ολόκληρη τη γραμμή και τη στήλη του ενεργού κελιού, θέτοντας την ιδιότητα ColorIndex στον αριθμό δείκτη για το επιθυμητό χρώμα.

    Private Sub Worksheet_SelectionChange( ByVal Target As Range) If Target.Cells.Count> 1 Then Exit Sub Application.ScreenUpdating = False 'Καθαρίστε το χρώμα όλων των κελιών Cells.Interior.ColorIndex = 0 With Target 'Επισημάνετε τη γραμμή και τη στήλη του επιλεγμένου κελιού .EntireRow.Interior.ColorIndex = 38 .EntireColumn.Interior.ColorIndex = 24 End With Application.ScreenUpdating = True End Sub

    Προσαρμογή του κώδικα

    Αν θέλετε να προσαρμόσετε τον κώδικα για τις ανάγκες σας, αυτές οι μικρές συμβουλές μπορεί να σας φανούν χρήσιμες:

    • Ο κώδικας του δείγματός μας χρησιμοποιεί δύο διαφορετικά χρώματα που παρουσιάζονται στο παραπάνω gif - δείκτης χρώματος 38 για τη γραμμή και 24 για τη στήλη. αλλαγή του χρώματος επισήμανσης , απλά αντικαταστήστε τους με οποιουσδήποτε κωδικούς ColorIndex της επιλογής σας.
    • Για να πάρετε τη γραμμή και τη στήλη χρωματισμένη στο με τον ίδιο τρόπο , χρησιμοποιήστε τον ίδιο αριθμό δείκτη χρώματος και για τα δύο.
    • Για να επισημάνετε μόνο το ενεργή σειρά , αφαιρέστε ή σχολιάστε αυτή τη γραμμή: .EntireColumn.Interior.ColorIndex = 24
    • Για να επισημάνετε μόνο το ενεργή στήλη , αφαιρέστε ή σχολιάστε αυτή τη γραμμή: .EntireRow.Interior.ColorIndex = 38

    Πώς να προσθέσετε τον κώδικα στο φύλλο εργασίας σας

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

    1. Στο βιβλίο εργασίας σας, πατήστε Alt + F11 για να μεταβείτε στον επεξεργαστή VBA.
    2. Στην Εξερεύνηση έργου στα αριστερά, θα δείτε μια λίστα με όλα τα ανοιχτά βιβλία εργασίας και τα φύλλα εργασίας τους. Αν δεν τη βλέπετε, χρησιμοποιήστε τη συντόμευση Ctrl + R για να εμφανίσετε το παράθυρο Εξερεύνηση έργου.
    3. Βρείτε το βιβλίο εργασίας-στόχο. Αντικείμενα του Microsoft Excel φάκελο, κάντε διπλό κλικ στο φύλλο στο οποίο θέλετε να εφαρμόσετε την επισήμανση. Σε αυτό το παράδειγμα, είναι το Φύλλο 1 .
    4. Στο παράθυρο Code στα δεξιά, επικολλήστε τον παραπάνω κώδικα.
    5. Αποθηκεύστε το αρχείο σας ως Βιβλίο εργασίας με δυνατότητα μακροεντολών (.xlsm).

    Πλεονεκτήματα : όλα γίνονται στο backend- δεν απαιτούνται προσαρμογές/παραμετροποιήσεις από την πλευρά του χρήστη- λειτουργεί σε όλες τις εκδόσεις του Excel.

    Μειονεκτήματα : υπάρχουν δύο βασικά μειονεκτήματα που καθιστούν την τεχνική αυτή ανεφάρμοστη υπό ορισμένες συνθήκες:

    • Ο κώδικας καθαρίζει τα χρώματα φόντου όλων των κελιών του φύλλου εργασίας. Εάν έχετε έγχρωμα κελιά, μην χρησιμοποιήσετε αυτή τη λύση, διότι θα χαθεί η προσαρμοσμένη μορφοποίησή σας.
    • Εκτέλεση αυτού του κώδικα μπλοκ η λειτουργία αναίρεσης στο φύλλο, και δεν θα μπορείτε να αναιρέσετε μια λανθασμένη ενέργεια πατώντας Ctrl + Z .

    Επισημάνετε την ενεργή γραμμή και στήλη χωρίς VBA

    Το καλύτερο που μπορείτε να έχετε για να επισημάνετε την επιλεγμένη γραμμή ή/και στήλη χωρίς VBA είναι η υπό όρους μορφοποίηση του Excel. Για να τη ρυθμίσετε, εκτελέστε τα εξής βήματα:

    1. Επιλέξτε το σύνολο δεδομένων σας στο οποίο θα πρέπει να γίνει η επισήμανση.
    2. Στο Αρχική σελίδα στην καρτέλα Στυλ ομάδα, κάντε κλικ στο Νέος κανόνας .
    3. Στο Νέος κανόνας μορφοποίησης παράθυρο διαλόγου, επιλέξτε Χρησιμοποιήστε έναν τύπο για να καθορίσετε ποια κελιά θα μορφοποιήσετε .
    4. Στο Μορφοποίηση τιμών όπου αυτός ο τύπος είναι αληθής εισάγετε έναν από αυτούς τους τύπους:

      Για να επισημάνετε ενεργή σειρά :

      =CELL("row")=ROW()

      Για να επισημάνετε ενεργή στήλη :

      =CELL("col")=COLUMN()

      Για να επισημάνετε ενεργή γραμμή και στήλη :

      =OR(CELL("row")=ROW(), CELL("col")= COLUMN())

      Όλοι οι τύποι χρησιμοποιούν τη συνάρτηση CELL για να επιστρέψουν τον αριθμό γραμμής/στήλης του επιλεγμένου κελιού.

    5. Κάντε κλικ στο Μορφή κουμπί, μεταβείτε στο Συμπλήρωση και επιλέξτε το χρώμα που σας αρέσει.
    6. Κάντε δύο φορές κλικ στο OK για να κλείσετε και τα δύο παράθυρα διαλόγου.

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

    Για αυτό το παράδειγμα, επιλέξαμε τον τύπο OR για να αποχρωματίσουμε τόσο τη στήλη όσο και τη γραμμή με το ίδιο χρώμα. Αυτό απαιτεί λιγότερη εργασία και είναι κατάλληλο για τις περισσότερες περιπτώσεις.

    Δυστυχώς, αυτή η λύση δεν είναι τόσο ωραία όσο η VBA, επειδή απαιτεί επανυπολογισμός του φύλλου με το χέρι (πατώντας το πλήκτρο F9). Από προεπιλογή, το Excel επαναϋπολογίζει ένα φύλλο εργασίας μόνο μετά την εισαγωγή νέων δεδομένων ή την επεξεργασία του υπάρχοντος, αλλά όχι όταν αλλάζει η επιλογή. Έτσι, επιλέγετε ένα άλλο κελί - δεν συμβαίνει τίποτα. Πατήστε το πλήκτρο F9 - το φύλλο ανανεώνεται, ο τύπος επαναϋπολογίζεται και η επισήμανση ενημερώνεται.

    Για να επαναϋπολογίζεται αυτόματα το φύλλο εργασίας κάθε φορά που το SelectionChange συμβάντος, μπορείτε να τοποθετήσετε αυτόν τον απλό κώδικα VBA στην ενότητα κώδικα του φύλλου-στόχου σας, όπως εξηγήθηκε στο προηγούμενο παράδειγμα:

    Private Sub Worksheet_SelectionChange( ByVal Target As Range) Target.Calculate End Sub

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

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

    Μειονεκτήματα : μπορεί να επιδεινώσει την απόδοση του Excel.

    • Για να λειτουργήσει η υπό όρους μορφοποίηση, πρέπει να αναγκάσετε το Excel να υπολογίζει εκ νέου τον τύπο σε κάθε αλλαγή επιλογής (είτε χειροκίνητα με το πλήκτρο F9 είτε αυτόματα με το VBA). Οι αναγκαστικοί επαναϋπολογισμοί μπορεί να επιβραδύνουν το Excel σας. Δεδομένου ότι ο κώδικάς μας υπολογίζει εκ νέου την επιλογή και όχι ολόκληρο το φύλλο, η αρνητική επίδραση θα είναι πιθανότατα αισθητή μόνο σε πραγματικά μεγάλα και πολύπλοκα βιβλία εργασίας.
    • Δεδομένου ότι η συνάρτηση CELL είναι διαθέσιμη στο Excel 2007 και νεότερες εκδόσεις, η μέθοδος δεν θα λειτουργήσει σε προηγούμενες εκδόσεις.

    Επισημάνετε την επιλεγμένη γραμμή και στήλη χρησιμοποιώντας μορφοποίηση υπό όρους και VBA

    Σε περίπτωση που η προηγούμενη μέθοδος επιβραδύνει σημαντικά το βιβλίο εργασίας σας, μπορείτε να προσεγγίσετε την εργασία με διαφορετικό τρόπο - αντί να υπολογίζετε εκ νέου ένα φύλλο εργασίας σε κάθε κίνηση του χρήστη, λάβετε τον αριθμό της ενεργής γραμμής/στήλης με τη βοήθεια της VBA και, στη συνέχεια, δώστε αυτόν τον αριθμό στη συνάρτηση ROW() ή COLUMN() χρησιμοποιώντας τύπους μορφοποίησης υπό όρους.

    Για να το πετύχετε αυτό, ακολουθούν τα βήματα που πρέπει να ακολουθήσετε:

    1. Προσθέστε ένα νέο κενό φύλλο στο βιβλίο εργασίας σας και ονομάστε το Φύλλο βοηθού Ο μόνος σκοπός αυτού του φύλλου είναι να αποθηκεύει δύο αριθμούς που αντιπροσωπεύουν τη γραμμή και τη στήλη που περιέχουν ένα επιλεγμένο κελί, ώστε να μπορείτε να αποκρύψετε το φύλλο με ασφάλεια σε μεταγενέστερο σημείο.
    2. Εισάγετε το παρακάτω VBA στο παράθυρο κώδικα του φύλλου εργασίας στο οποίο θέλετε να εφαρμόσετε την επισήμανση. Για τις αναλυτικές οδηγίες ανατρέξτε στο πρώτο μας παράδειγμα. Private Sub Worksheet_SelectionChange( ByVal Target As Range) Application.ScreenUpdating = False Worksheets( "Helper Sheet" ).Cells(2, 1) = Target.Row Worksheets( "Helper Sheet" ).Cells(2, 2) = Target.Column Application.ScreenUpdating= True End Sub

      Ο παραπάνω κώδικας τοποθετεί τις συντεταγμένες της ενεργής γραμμής και στήλης στο φύλλο με όνομα "Helper Sheet". Αν ονομάσατε διαφορετικά το φύλλο σας στο βήμα 1, αλλάξτε το όνομα του φύλλου εργασίας στον κώδικα ανάλογα. Ο αριθμός γραμμής γράφεται στο A2 και ο αριθμός στήλης στο B2.

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

    Και τώρα, ας καλύψουμε λεπτομερώς τις τρεις κύριες περιπτώσεις χρήσης.

    Πώς να επισημάνετε την ενεργή γραμμή

    Για να επισημάνετε τη γραμμή στην οποία είναι τοποθετημένος ο δρομέας σας αυτή τη στιγμή, δημιουργήστε έναν κανόνα μορφοποίησης υπό όρους με αυτόν τον τύπο:

    =ROW()='Βοηθητικό φύλλο'!$A$2

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

    Πώς να επισημάνετε την ενεργή στήλη

    Για να επισημάνετε την επιλεγμένη στήλη, δώστε τον αριθμό της στήλης στη συνάρτηση COLUMN χρησιμοποιώντας αυτόν τον τύπο:

    =COLUMN()='Βοηθητικό φύλλο'!$B$2

    Τώρα, μια υπογραμμισμένη στήλη σας επιτρέπει να διαβάζετε άνετα και αβίαστα κάθετα δεδομένα εστιάζοντας αποκλειστικά σε αυτά.

    Πώς να επισημάνετε την ενεργή γραμμή και στήλη

    Για να έχετε αυτόματα την ίδια σκίαση της επιλεγμένης γραμμής και στήλης με το ίδιο χρώμα, συνδυάστε τις συναρτήσεις ROW() και COLUMN() σε έναν τύπο:

    =OR(ROW()='Helper Sheet'!$A$2, COLUMN()='Helper Sheet'!$B$2)

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

    Πλεονεκτήματα : βελτιστοποιημένη απόδοση- λειτουργεί σε όλες τις εκδόσεις του Excel

    Μειονεκτήματα : η μεγαλύτερη εγκατάσταση

    Αυτός είναι ο τρόπος για να επισημάνετε τη στήλη και τη γραμμή ενός επιλεγμένου κελιού στο Excel. Σας ευχαριστώ για την ανάγνωση και ανυπομονώ να σας δω στο blog μας την επόμενη εβδομάδα!

    Βιβλίο ασκήσεων για κατέβασμα

    Επισήμανση ενεργής γραμμής και στήλης (.xlsm αρχείο)

    Ο Michael Brown είναι ένας αφοσιωμένος λάτρης της τεχνολογίας με πάθος για την απλοποίηση πολύπλοκων διαδικασιών χρησιμοποιώντας εργαλεία λογισμικού. Με περισσότερο από μια δεκαετία εμπειρίας στον κλάδο της τεχνολογίας, έχει βελτιώσει τις δεξιότητές του στο Microsoft Excel και το Outlook, καθώς και στα Φύλλα Google και στα Έγγραφα. Το blog του Michael είναι αφιερωμένο στο να μοιράζεται τη γνώση και την τεχνογνωσία του με άλλους, παρέχοντας εύκολες συμβουλές και σεμινάρια για τη βελτίωση της παραγωγικότητας και της αποτελεσματικότητας. Είτε είστε έμπειρος επαγγελματίας είτε αρχάριος, το ιστολόγιο του Michael προσφέρει πολύτιμες πληροφορίες και πρακτικές συμβουλές για να αξιοποιήσετε στο έπακρο αυτά τα βασικά εργαλεία λογισμικού.