Πίνακας περιεχομένων
Σε αυτό το άρθρο, θα εξετάσουμε διάφορους τρόπους ταξινόμησης ημερομηνιών στο Excel. Θα μάθετε πώς να ταξινομείτε γρήγορα τις ημερομηνίες σε χρονολογική σειρά, να τις ταξινομείτε ανά μήνα αγνοώντας τα έτη, να ταξινομείτε τα γενέθλια ανά μήνα και ημέρα και πώς να ταξινομείτε αυτόματα ανά ημερομηνία κατά την εισαγωγή νέων τιμών.
Οι ενσωματωμένες επιλογές ταξινόμησης του Excel είναι ισχυρά και αποτελεσματικά εργαλεία, αλλά δεν λειτουργούν πάντα σωστά όταν πρόκειται για την ταξινόμηση ημερομηνιών. Αυτό το σεμινάριο θα σας διδάξει μερικά χρήσιμα κόλπα για να ταξινομήσετε το Excel κατά ημερομηνία με ουσιαστικό τρόπο χωρίς να καταστρέψετε τα δεδομένα σας.
Πώς να ταξινομήσετε τις ημερομηνίες με χρονολογική σειρά
Η διάταξη των ημερομηνιών σε χρονολογική σειρά στο Excel είναι πολύ εύκολη. Ανοδική ταξινόμηση επιλογή:
- Επιλέξτε τις ημερομηνίες που θέλετε να ταξινομήσετε χρονολογικά.
- Στο Αρχική σελίδα στην καρτέλα Μορφές ομάδα, κάντε κλικ στο Ταξινόμηση & φίλτρο και επιλέξτε Ταξινόμηση Παλαιότερο προς Νεότερο Εναλλακτικά, μπορείτε να χρησιμοποιήσετε το A-Z στην επιλογή Δεδομένα στην καρτέλα Ταξινόμηση & φίλτρο ομάδα.
Πώς να ταξινομήσετε με βάση την ημερομηνία στο Excel
Οι επιλογές ταξινόμησης του Excel μπορούν επίσης να χρησιμοποιηθούν για την αναδιάταξη ολόκληρου του πίνακα και όχι μόνο μιας στήλης. Για να ταξινομήσετε τις εγγραφές με βάση την ημερομηνία διατηρώντας τις γραμμές ανέπαφες, το βασικό σημείο είναι να επεκτείνετε την επιλογή όταν σας ζητηθεί.
Εδώ είναι τα λεπτομερή βήματα ταξινόμησης δεδομένων στο Excel με βάση την ημερομηνία:
- Στο λογιστικό σας φύλλο, επιλέξτε τις ημερομηνίες χωρίς την επικεφαλίδα της στήλης.
- Στο Αρχική σελίδα κάντε κλικ στην καρτέλα Ταξινόμηση & φίλτρο και επιλέξτε Ταξινόμηση Παλαιότερο προς Νεότερο .
- Το Ταξινόμηση Προειδοποίηση Θα εμφανιστεί το παράθυρο διαλόγου. Επεκτείνετε την επιλογή επιλεγμένη και κάντε κλικ στο κουμπί Ταξινόμηση :
Οι εγγραφές έχουν ταξινομηθεί κατά ημερομηνία και όλες οι γραμμές διατηρούνται μαζί:
Πώς να ταξινομήσετε ανά μήνα στο Excel
Ενδέχεται να υπάρξουν φορές που επιθυμείτε να ταξινόμηση ημερομηνιών ανά μήνα αγνοώντας το έτος, για παράδειγμα όταν ομαδοποιείτε τις ημερομηνίες επετείων των συναδέλφων ή των συγγενών σας. Σε αυτή την περίπτωση, η προεπιλεγμένη λειτουργία ταξινόμησης του Excel δεν θα λειτουργήσει επειδή λαμβάνει πάντα υπόψη το έτος, ακόμη και αν τα κελιά σας είναι διαμορφωμένα ώστε να εμφανίζουν μόνο τον μήνα ή τον μήνα και την ημέρα.
Η λύση είναι να προσθέσετε μια βοηθητική στήλη, να εξαγάγετε τον αριθμό του μήνα και να ταξινομήσετε με βάση αυτή τη στήλη. Για να λάβετε έναν μήνα από την ημερομηνία, χρησιμοποιήστε τη συνάρτηση MONTH.
Στο παρακάτω στιγμιότυπο οθόνης, εξάγουμε τον αριθμό του μήνα από την ημερομηνία στο Β2 με αυτόν τον τύπο:
=MONTH(B2)
Συμβουλή. Εάν το αποτέλεσμα εμφανίζεται ως ημερομηνία αντί για αριθμό, ορίστε το Γενικά μορφή στα κελιά του τύπου.
Και τώρα, ταξινομήστε τον πίνακά σας με βάση το Μήνας Για το σκοπό αυτό, επιλέξτε τους αριθμούς των μηνών (C2:C8), κάντε κλικ στο κουμπί Ταξινόμηση & φίλτρο >, Ταξινόμηση από το μικρότερο στο μεγαλύτερο , και στη συνέχεια επεκτείνετε την επιλογή όταν σας το ζητήσει το Excel. Αν όλα έχουν γίνει σωστά, θα έχετε το ακόλουθο αποτέλεσμα:
Παρακαλούμε προσέξτε ότι τα δεδομένα μας είναι πλέον ταξινομημένα ανά μήνα, αγνοώντας τα έτη και τις ημέρες μέσα σε κάθε μήνα. Αν θέλετε να ταξινόμηση κατά μήνα και ημέρα , και στη συνέχεια ακολουθήστε τις οδηγίες του επόμενου παραδείγματος.
Εάν τα ονόματα των μηνών έχουν εισαχθεί ως κείμενο , και στη συνέχεια ταξινομήστε με βάση μια προσαρμοσμένη λίστα, όπως εξηγείται σε αυτό το παράδειγμα.
Πώς να ταξινομήσετε τα γενέθλια στο Excel ανά μήνα και ημέρα
Κατά την τακτοποίηση των ημερομηνιών για ένα ημερολόγιο γενεθλίων, η βέλτιστη λύση θα είναι η ταξινόμηση των ημερομηνιών ανά μήνα και ημέρα. Κατά συνέπεια, χρειάζεστε έναν τύπο που θα αντλεί τους μήνες και τις ημέρες από τις ημερομηνίες γέννησης.
Σε αυτή την περίπτωση, η συνάρτηση TEXT του Excel, η οποία μπορεί να μετατρέψει μια ημερομηνία σε συμβολοσειρά κειμένου στη συγκεκριμένη μορφή, είναι χρήσιμη. Για τον σκοπό μας, ο κωδικός μορφής "mmdd" ή "mm.dd" θα λειτουργήσει.
Με την ημερομηνία προέλευσης στο Β2, ο τύπος έχει την εξής μορφή:
=TEXT(B2, "mm.dd")
Στη συνέχεια, ταξινομήστε τα Μήνας και ημέρα στήλη από τη μεγαλύτερη προς τη μικρότερη, και θα έχετε τα δεδομένα τοποθετημένα με τη σειρά των ημερών κάθε μήνα.
Το ίδιο αποτέλεσμα μπορεί να επιτευχθεί με τη χρήση του τύπου DATE ως εξής:
=DATE(2000, MONTH(B2),DAY(B2))
Ο τύπος δημιουργεί μια λίστα ημερομηνιών εξάγοντας τον μήνα και την ημέρα από την πραγματική ημερομηνία στο Β2 και αντικαθιστώντας το πραγματικό έτος με ένα ψεύτικο, το 2000 σε αυτό το παράδειγμα, αν και μπορείτε να βάλετε οποιοδήποτε. Η ιδέα είναι να έχουμε το ίδιο έτος για όλες τις ημερομηνίες και στη συνέχεια να ταξινομήσουμε τη λίστα των ημερομηνιών με χρονολογική σειρά. Εφόσον το έτος είναι το ίδιο, οι ημερομηνίες θα ταξινομηθούν με βάση τον μήνα και την ημέρα, πράγμα που είναι ακριβώς αυτό που θέλετεψάχνει.
Πώς να ταξινομήσετε δεδομένα ανά έτος στο Excel
Όταν πρόκειται για ταξινόμηση ανά έτος, ο ευκολότερος τρόπος είναι να ταξινομήσετε τις ημερομηνίες με χρονολογική σειρά με την αύξουσα ταξινόμηση του Excel ( Παλαιότερο προς Νεότερο ) επιλογή.
Αυτό θα ταξινομήσει τις ημερομηνίες ανά έτος, στη συνέχεια ανά μήνα και στη συνέχεια ανά ημέρα, όπως φαίνεται στο παρακάτω στιγμιότυπο.
Αν για κάποιο λόγο δεν είστε ευχαριστημένοι με μια τέτοια ρύθμιση, τότε μπορείτε να προσθέσετε μια βοηθητική στήλη με τον τύπο YEAR που εξάγει το έτος από την ημερομηνία:
=YEAR(C2)
Μετά την ταξινόμηση των δεδομένων με βάση το Έτος θα παρατηρήσετε ότι οι ημερομηνίες είναι ταξινομημένες μόνο κατά έτος, αγνοώντας μήνες και ημέρες .
Συμβουλή. Αν θέλετε να ταξινόμηση ημερομηνιών ανά ημέρα αγνοώντας τους μήνες και τα έτη, εξάγετε την ημέρα χρησιμοποιώντας τη συνάρτηση DAY και, στη συνέχεια, ταξινομήστε με βάση το Ημέρα στήλη:
=DAY(B2)
Πώς να ταξινομήσετε με βάση τις ημέρες της εβδομάδας στο Excel
Για να ταξινομήσετε τα δεδομένα με βάση την ημέρα της εβδομάδας, θα χρειαστείτε επίσης μια βοηθητική στήλη όπως στα προηγούμενα παραδείγματα. Σε αυτή την περίπτωση, θα συμπληρώσουμε τη βοηθητική στήλη με τον τύπο WEEKDAY που επιστρέφει έναν αριθμό που αντιστοιχεί στην ημέρα της εβδομάδας και στη συνέχεια θα ταξινομήσουμε με βάση τη βοηθητική στήλη.
Για μια εβδομάδα που αρχίζει από την Κυριακή (1) έως το Σάββατο (7), αυτός είναι ο τύπος που πρέπει να χρησιμοποιήσετε:
=WEEKDAY(A2)
Αν η εβδομάδα σας ξεκινάει από Δευτέρα (1) έως Κυριακή (7), εδώ είναι η σωστή:
=WEEKDAY(A2, 2)
Όπου A2 είναι το κελί που περιέχει την ημερομηνία.
Για αυτό το παράδειγμα, χρησιμοποιήσαμε τον πρώτο τύπο και πήραμε αυτό το αποτέλεσμα:
Σε περίπτωση που τα ονόματα των καθημερινών έχουν εισαχθεί ως κείμενο , όχι ως ημερομηνίες, τότε χρησιμοποιήστε τη λειτουργία Προσαρμοσμένης ταξινόμησης, όπως εξηγείται στο επόμενο παράδειγμα.
Πώς να ταξινομήσετε τα δεδομένα στο Excel με βάση τα ονόματα των μηνών (ή των ημερών της εβδομάδας)
Σε περίπτωση που έχετε μια λίστα με τα ονόματα των μηνών ως κείμενο , και όχι ως ημερομηνίες διαμορφωμένες ώστε να εμφανίζουν μόνο μήνες, η εφαρμογή της αύξουσας ταξινόμησης του Excel μπορεί να αποτελέσει πρόβλημα - θα ταξινομήσει τα ονόματα των μηνών αλφαβητικά αντί να ταξινομήσει με βάση τη σειρά των μηνών από τον Ιανουάριο έως τον Δεκέμβριο. Στην περίπτωση αυτή, μια προσαρμοσμένη ταξινόμηση θα βοηθήσει:
- Επιλέξτε τις εγγραφές που θέλετε να ταξινομήσετε με βάση το όνομα του μήνα.
- Στο Δεδομένα στην καρτέλα Ταξινόμηση & φίλτρο ομάδα, κάντε κλικ στο Ταξινόμηση .
- Στο Ταξινόμηση παράθυρο διαλόγου, κάντε τα εξής:
- Κάτω από το Στήλη , επιλέξτε το όνομα της στήλης που περιέχει τα ονόματα των μηνών.
- Κάτω από το Ταξινόμηση σε , επιλέξτε Τιμές κελιών .
- Κάτω από το Παραγγελία , επιλέξτε Προσαρμοσμένη λίστα .
- Στο Προσαρμοσμένες λίστες παράθυρο διαλόγου, επιλέξτε είτε πλήρη ονόματα μηνών ( Ιανουάριος , Φεβρουάριος , Μάρτιος , ...) ή σύντομα ονόματα ( Jan , Φεβρουάριος , Μαρ ...) ανάλογα με τον τρόπο με τον οποίο οι μήνες παρατίθενται στο φύλλο εργασίας σας:
Τα δεδομένα σας έχουν ταξινομηθεί με βάση το όνομα του μήνα με χρονολογική σειρά, όχι με αλφαβητική:
Συμβουλή. Για να ταξινομήσετε με βάση το ονόματα των ημέρες της εβδομάδας , επιλέξτε είτε πλήρη ονόματα ( Κυριακή , Δευτέρα , Τρίτη , ...) ή σύντομα ονόματα ( Ήλιος , Δευτέρα , Τρίτη ...) στο Προσαρμοσμένες λίστες παράθυρο διαλόγου.
Πώς να ταξινομήσετε αυτόματα με βάση την ημερομηνία στο Excel
Όπως είδατε, η λειτουργία Ταξινόμησης του Excel αντιμετωπίζει μια ποικιλία προκλήσεων. Το μόνο μειονέκτημα είναι ότι δεν είναι δυναμική. Αυτό σημαίνει ότι θα πρέπει να ταξινομείτε εκ νέου τα δεδομένα σας με κάθε αλλαγή και κάθε φορά που προστίθενται νέες πληροφορίες. Ίσως αναρωτιέστε αν υπάρχει τρόπος να ταξινομείτε αυτόματα κάθε φορά που προστίθεται μια νέα ημερομηνία, ώστε τα δεδομένα σας να είναι πάντα σε τάξη.
Ο καλύτερος τρόπος για να το πετύχετε αυτό είναι με τη χρήση μιας μακροεντολής. Παρακάτω, θα βρείτε μερικά παραδείγματα κώδικα για την αυτόματη ταξινόμηση των παρακάτω δεδομένων κατά ημερομηνία με χρονολογική σειρά.
Μακροεντολή 1: Αυτόματη ταξινόμηση με κάθε αλλαγή φύλλου εργασίας
Αυτή η μακροεντολή εκτελείται κάθε φορά που γίνεται μια αλλαγή οπουδήποτε στο φύλλο εργασίας.
Θεωρείται ότι τα δεδομένα σας βρίσκονται στις στήλες Α έως Γ και οι ημερομηνίες με βάση τις οποίες θέλετε να ταξινομήσετε βρίσκονται στη στήλη Γ, ξεκινώντας από τη Γ2. Θεωρείται επίσης ότι η γραμμή 1 περιέχει επικεφαλίδες (Header:=xlYes). Εάν οι εγγραφές σας βρίσκονται σε διαφορετικές στήλες, τότε κάντε τις ακόλουθες προσαρμογές:
- Αλλάξτε την αναφορά A1 στο επάνω αριστερό κελί της περιοχής στόχου (συμπεριλαμβανομένων των κεφαλίδων).
- Αλλάξτε την αναφορά C2 στο πιο πάνω κελί που περιέχει μια ημερομηνία.
Μακροεντολή 2: Αυτόματη ταξινόμηση όταν γίνονται αλλαγές σε ένα συγκεκριμένο εύρος
Εάν εργάζεστε με ένα τεράστιο φύλλο εργασίας που περιέχει πολλές πληροφορίες, η εκ νέου ταξινόμηση με οποιαδήποτε απολύτως αλλαγή στο φύλλο μπορεί να είναι ενοχλητική. Σε αυτή την περίπτωση, είναι λογικό να περιορίσετε την ενεργοποίηση της μακροεντολής στις αλλαγές που συμβαίνουν σε ένα συγκεκριμένο εύρος. Ο παρακάτω κώδικας VBA ταξινομεί τα δεδομένα μόνο όταν γίνεται αλλαγή στη στήλη C που περιέχει τις ημερομηνίες.
Private Sub Worksheet_Change( ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range( "C:C" )) Is Nothing Then Range( "A1" ).Sort Key1:=Range( "C2" ), _ Order1:=xlAscending, Header:=xlYes, _ OrderCustom:=1, MatchCase:= False , _ Orientation:=xlTopToBottom End If End SubΣυμβουλή. Αυτές οι μακροεντολές μπορούν να χρησιμοποιηθούν για την αυτόματη ταξινόμηση κατά οποιοσδήποτε τύπος δεδομένων Οι κώδικες του παραδείγματός μας ταξινομούνται με αύξουσα σειρά. Αν θέλετε να ταξινόμηση φθίνουσα , αλλάξτε το Order1:=xlAscending σε Order1:=xlDescending.
Πώς να προσθέσετε τη μακροεντολή στο φύλλο εργασίας σας
Καθώς και οι δύο μακροεντολές εκτελούνται αυτόματα με την αλλαγή ενός φύλλου εργασίας, ο κώδικας πρέπει να εισαχθεί στο φύλλο όπου θέλετε να ταξινομήσετε τα δεδομένα (φύλλο1 σε αυτό το παράδειγμα). Ακούστε πώς:
- Πατήστε Alt + F11 για να ανοίξετε τον επεξεργαστή VBA.
- Στο Εξερευνητής έργου στα αριστερά, κάντε διπλό κλικ στο φύλλο όπου θέλετε να γίνει αυτόματη ταξινόμηση.
- Επικολλήστε τον κώδικα στο παράθυρο Κώδικας.
Αυτόματη ταξινόμηση ημερομηνιών με τύπο
Ας υποθέσουμε ότι έχετε μια λίστα ημερομηνιών και θα θέλατε να τις τοποθετήσετε αυτόματα με χρονολογική σειρά σε μια ξεχωριστή στήλη, δίπλα-δίπλα με την αρχική λίστα. Αυτό μπορεί να γίνει με τον ακόλουθο τύπο πίνακα:
=IFERROR(INDEX($A$2:$A$20, MATCH(ROWS($A$2:A2), COUNTIF($A$2:$A$20, "<="&$A$2:$A$20), 0)), "")
Όπου A2:A20 είναι οι αρχικές (μη ταξινομημένες) ημερομηνίες, συμπεριλαμβανομένων μερικών κενών κελιών για πιθανές νέες καταχωρίσεις.
Εισάγετε τον τύπο σε ένα κενό κελί δίπλα στη στήλη με τις αρχικές ημερομηνίες (C2 σε αυτό το παράδειγμα) και πατήστε ταυτόχρονα τα πλήκτρα Ctrl + Shift + Enter για να τον ολοκληρώσετε. Στη συνέχεια, σύρετε τον τύπο προς τα κάτω στα υπόλοιπα κελιά (C2:C20 στην περίπτωσή μας).
Συμβουλή. Για να ταξινομούνται αυτόματα οι νεοπροστιθέμενες ημερομηνίες, φροντίστε να συμπεριλάβετε επαρκή αριθμό κενών κελιών στην αναφερόμενη περιοχή. Για παράδειγμα, η λίστα ημερομηνιών μας βρίσκεται στην περιοχή A2:A7, αλλά παρέχουμε $A$2:$A$20 στον τύπο και τη συμπληρώνουμε στα κελιά C2 έως C20. Η συνάρτηση IFERROR αποτρέπει τα σφάλματα στα επιπλέον κελιά, επιστρέφοντας αντ' αυτού μια κενή συμβολοσειρά ("").
Η ταξινόμηση του Excel με βάση την ημερομηνία δεν λειτουργεί
Εάν οι ημερομηνίες σας δεν είναι ταξινομημένες όπως θα έπρεπε, το πιθανότερο είναι ότι έχουν εισαχθεί σε μορφή που δεν μπορεί να κατανοήσει το Excel, επομένως γίνονται αντιληπτές ως συμβολοσειρές κειμένου και όχι ως ημερομηνίες. Το ακόλουθο σεμινάριο εξηγεί πώς να διακρίνετε τις λεγόμενες "ημερομηνίες κειμένου" και να τις μετατρέψετε σε κανονικές ημερομηνίες του Excel: Πώς να μετατρέψετε κείμενο σε ημερομηνία στο Excel.
Αυτός είναι ο τρόπος ταξινόμησης με βάση την ημερομηνία στο Excel. Σας ευχαριστώ για την ανάγνωση και ελπίζω να σας δω στο blog μας την επόμενη εβδομάδα!
Διαθέσιμες λήψεις
Παραδείγματα τύπων ταξινόμησης κατά ημερομηνία (.xlsx αρχείο)
Μακροεντολή αυτόματης ταξινόμησης (.xlsm αρχείο)