Μετάβαση στο κύριο περιεχόμενο

Πώς να κάνετε αυτόματη ταξινόμηση ημερομηνίας κατά την εισαγωγή ή αλλαγή της ημερομηνίας στο Excel; 

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

Αυτόματη ταξινόμηση ημερομηνίας κατά την εισαγωγή ή αλλαγή της ημερομηνίας με τον τύπο

Αυτόματη ταξινόμηση ημερομηνίας κατά την εισαγωγή ή αλλαγή ημερομηνίας με κωδικό VBA


βέλος μπλε δεξιά φούσκα Αυτόματη ταξινόμηση ημερομηνίας κατά την εισαγωγή ή αλλαγή της ημερομηνίας με τον τύπο

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

1. Εισαγάγετε αυτόν τον τύπο:

=INDEX($A$2:$A$15,MATCH(ROWS($A$2:A2),COUNTIF($A$2:$A$15,"<="&$A$2:$A$15),0)) σε ένα κενό κελί δίπλα στη στήλη ημερομηνιών, C2, για παράδειγμα, και στη συνέχεια πατήστε Ctrl + Shift + Εισαγωγή πλήκτρα μαζί και θα λάβετε μια ακολουθία αριθμών και, στη συνέχεια, σύρετε τη λαβή πλήρωσης προς τα κάτω στα κελιά που θέλετε να χρησιμοποιήσετε, δείτε το στιγμιότυπο οθόνης:

Note: Στον παραπάνω τύπο: A2: A15 είναι το αρχικό εύρος ημερομηνιών που θέλετε να ταξινομήσετε αυτόματα.

αυτόματη ταξινόμηση εγγράφου κατά ημερομηνία 1

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

αυτόματη ταξινόμηση εγγράφου κατά ημερομηνία 2

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

αυτόματη ταξινόμηση εγγράφου κατά ημερομηνία 3

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

αυτόματη ταξινόμηση εγγράφου κατά ημερομηνία 4


βέλος μπλε δεξιά φούσκα Αυτόματη ταξινόμηση ημερομηνίας κατά την εισαγωγή ή αλλαγή ημερομηνίας με κωδικό VBA

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

1. Μεταβείτε στο φύλλο εργασίας που θέλετε να ταξινομήσετε αυτόματα την ημερομηνία κατά την εισαγωγή ή αλλαγή ημερομηνίας.

2. Κάντε δεξί κλικ στην καρτέλα φύλλων και επιλέξτε Προβολή κωδικού από το μενού περιβάλλοντος, στο αναδυόμενο Microsoft Visual Basic για εφαρμογές παράθυρο, αντιγράψτε και επικολλήστε τον ακόλουθο κώδικα στο κενό Μονάδα μέτρησης παράθυρο, δείτε το στιγμιότυπο οθόνης:

Κωδικός VBA: αυτόματη ταξινόμηση κατά την εισαγωγή ή αλλαγή της ημερομηνίας:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
    On Error Resume Next
    If Application.Intersect(Target, Application.Columns(1)) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    Range("A1").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
                                        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

αυτόματη ταξινόμηση εγγράφου κατά ημερομηνία 6

Note: Στον παραπάνω κώδικα, η ημερομηνία εισαγωγής θα είναι αυτόματη ταξινόμηση στη στήλη Α, μπορείτε να αλλάξετε A1 και A2 στα δικά σας κελιά όπως χρειάζεστε.

3. Από τώρα και στο εξής, όταν εισάγετε ημερομηνία στη στήλη Α, η ημερομηνία θα ταξινομηθεί αύξουσα αυτόματα.

Τα καλύτερα εργαλεία παραγωγικότητας γραφείου

🤖 Kutools AI Aide: Επανάσταση στην ανάλυση δεδομένων με βάση: Ευφυής Εκτέλεση   |  Δημιουργία κώδικα  |  Δημιουργία προσαρμοσμένων τύπων  |  Αναλύστε δεδομένα και δημιουργήστε γραφήματα  |  Επίκληση Λειτουργιών Kutools...
Δημοφιλή χαρακτηριστικά: Εύρεση, επισήμανση ή αναγνώριση διπλότυπων   |  Διαγραφή κενών γραμμών   |  Συνδυάστε στήλες ή κελιά χωρίς απώλεια δεδομένων   |   Γύρος χωρίς φόρμουλα ...
Σούπερ Αναζήτηση: VLookup πολλαπλών κριτηρίων    VLookup πολλαπλών τιμών  |   VLookup σε πολλά φύλλα   |   Ασαφής αναζήτηση ....
Σύνθετη αναπτυσσόμενη λίστα: Γρήγορη δημιουργία αναπτυσσόμενης λίστας   |  Εξαρτημένη αναπτυσσόμενη λίστα   |  Πολλαπλή αναπτυσσόμενη λίστα ....
Διαχειριστής στήλης: Προσθέστε έναν συγκεκριμένο αριθμό στηλών  |  Μετακίνηση στηλών  |  Εναλλαγή κατάστασης ορατότητας κρυφών στηλών  |  Συγκρίνετε εύρη και στήλες ...
Επιλεγμένα Χαρακτηριστικά: Εστίαση πλέγματος   |  Προβολή σχεδίου   |   Μεγάλη Formula Bar    Διαχείριση βιβλίου εργασίας & φύλλου   |  Βιβλιοθήκη πόρων (Αυτόματο κείμενο)   |  Επιλογή ημερομηνίας   |  Συνδυάστε φύλλα εργασίας   |  Κρυπτογράφηση/Αποκρυπτογράφηση κελιών    Αποστολή email ανά λίστα   |  Σούπερ φίλτρο   |   Ειδικό φίλτρο (φίλτρο με έντονη γραφή/πλάγια γραφή/διαγραφή...) ...
Κορυφαία 15 σύνολα εργαλείων12 Κείμενο Εργαλεία (Προσθήκη κειμένου, Κατάργηση χαρακτήρων, ...)   |   50 + Διάγραμμα Τύποι (Gantt διάγραμμα, ...)   |   40+ Πρακτικό ΜΑΘΗΜΑΤΙΚΟΙ τυποι (Υπολογίστε την ηλικία με βάση τα γενέθλια, ...)   |   19 Εισαγωγή Εργαλεία (Εισαγωγή κωδικού QR, Εισαγωγή εικόνας από το μονοπάτι, ...)   |   12 Μετατροπή Εργαλεία (Αριθμοί σε λέξεις, Μετατροπή Συναλλάγματος, ...)   |   7 Συγχώνευση & διαχωρισμός Εργαλεία (Σύνθετες σειρές συνδυασμού, Διαίρεση κελιών, ...)   |   ... κι αλλα

Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου.  Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...

Περιγραφή


Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
Comments (15)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hello,This is a great tool. thank you. How can i apply this to multiple columns in the same tab? Could i apply it to restart sorting by date in a new cell of the same column? Would i just repaste the VBA code into the same window?
Thank you.
This comment was minimized by the moderator on the site
Hello Noname9,How are you? To achieve your goal by using VBA code is beyond my reach. But I do know how to use formulas to do the trick.Suppose we have two columns of dates, say A2:B7. How to sort these dates into a new column? Please do as follows.
First, we need to combine the two columns of dates into one column. Copy and paste the formula =INDEX($A$2:$B$7,INT((ROWS(D$2:D2)-1)/2)+1,MOD(ROWS(D$2:D2)-1,2)+1) into cell D2. And drag the fill handle down to combine all dates. Please see screenshot 1.
Then, we will sort the combined dates. Copy and paste the formula =INDEX($D$2:$D$13,MATCH(ROWS($D$2:D2),COUNTIF($D$2:$D$13,"<="&$D$2:$D$13),0)) into F2. And drag the fill handle down to sort all dates. Please see screenshot 2.
Hope it will help. Have a nice day.Sincerely,Mandy
This comment was minimized by the moderator on the site
Hello,What if i want to do this to multiple columns or even have anew start point in the same column? Do i just do a break and recopy the VBA code in that same window?
Thank you.
This comment was minimized by the moderator on the site
That VBA code is solid gold! Thank you! :-)
This comment was minimized by the moderator on the site
With the VBA code, I have copy and pasted the above but wish for the dates in column F to be the values by which the data is sorted. I've changed the range values to F2 and F3500 (the size of the spreadsheet where row 1 is titles), but it still sorts by the dates in column A. Can somebody help me please?
This comment was minimized by the moderator on the site
Hello, Ross,
When applying the code to column F, you should change some references to your need as below code:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20160606
On Error Resume Next
If Application.Intersect(Target, Application.Columns(6)) Is Nothing Then Exit Sub
If Target.Count > 1 Then Exit Sub
Range("F1").Sort Key1:=Range("F2"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Sub

Please try, hope it can help you!
This comment was minimized by the moderator on the site
Is there a particular formula to keep the cells following the sorted date? It would be nice to organize by date but keep the entire row of information. Any help would be much appreciated.
This comment was minimized by the moderator on the site
I mad a checkbook register and it works but I want to figure out how to make my entry’s to go into date order. Any help would be appreciated. I’m still learning excel.
This comment was minimized by the moderator on the site
In addition to the duplicate dates, is there also a way to include multiple columns of data when it sorts? I need it to include multiple columns and sort them all together with the expiration dates.
This comment was minimized by the moderator on the site
how can I do this same sorting calculation but from newest date to oldest? Currently it is Oldest to Newest. Flipping the < sign isn't enough and beyond that I don't have a strong enough understanding of what it is doing. Also I think what may be happening is excel automatically works top to bottom causing difficulties.
This comment was minimized by the moderator on the site
Hello, Bo,

To auto sort the date from newest to oldest, you just need to change the <= to >= in the above formula as follows:
=INDEX($A$2:$A$15,MATCH(ROWS($A$2:A2),COUNTIF($A$2:$A$15,">="&$A$2:$A$15),0))
After inserting this formula, please remember to press Ctrl + Shift + Enter keys together to get the correct result.
Please try it.
This comment was minimized by the moderator on the site
What if there is a duplicate date in the list? And I want both numbers to show up.
This comment was minimized by the moderator on the site
Hello, Ryan,

To sort the date with duplicate ones, you should apply the following formula:

=IFERROR(INDEX($A$2:$A$11,MATCH(ROWS($A$2:A2),COUNTIF($A$2:$A$11,"<="&$A$2:$A$11),0)),IF(ROWS($A$2:A2)<ROWS($A$2:$A$11),B3,""))

Please remember to press Shift + Ctrl + Enter keys together.

Hope it can help you, thank you!
This comment was minimized by the moderator on the site
Awesome :) Working fine
This comment was minimized by the moderator on the site
U forgot to mention the formula is array and you need to ctrl+Shift+ enter. Luckily you had a screenshot or your page would be a waste of cyberspace
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations