Ταξινομήστε τα δεδομένα κατά γενέθλια χρησιμοποιώντας VBA στο Microsoft Excel

Πίνακας περιεχομένων

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

Τα ακατέργαστα δεδομένα αποτελούνται από δύο στήλες, μία περιέχει το όνομα και η δεύτερη στήλη περιέχει την ημερομηνία γέννησης.

Λογική εξήγηση

Δημιουργήσαμε μια μακροεντολή, "sorting_names_by_birthday" η οποία θα ταξινομήσει τα δεδομένα.

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

Για εκτέλεση της μακροεντολής, πατήστε Alt +F8 ή Μεταβείτε στην καρτέλα Προγραμματιστής> κάντε κλικ στο Μακροεντολή.

Ακολουθήστε παρακάτω για τον κωδικό

 Option Explicit Sub sorting_names_by_birthday () 'Απενεργοποίηση ενημέρωσης οθόνης Application.ScreenUpdating = False Dim Last_Row As Long' Εύρεση της τελευταίας σειράς Last_Row = ActiveCell.SpecialCells (xlCellTypeLastCell). Range Range ("C16"). Επιλέξτε "Getting the days of the year Αφαίρεση της πρώτης ημερομηνίας του έτους από την ημερομηνία γέννησης ActiveCell.FormulaR1C1 = "= RC [-1] -DATE (YEAR (RC [-1]), 1,1)" 'Σύροντας το εύρος του τύπου ("C16: C" & Last_Row) .Επιλέξτε Selection.FillDown 'Ταξινόμηση των δεδομένων πρώτα ανά στήλη Α και έπειτα από στήλη C Range ("A15"). CurrentRegion.Sort _ key1: = Range ("C15"), order1: = xlΑύξουσα, _ key2: = Range ("A15"), σειρά2: = xlΑύξουσα, _ Κεφαλίδα: = xlΝαι 'Διαγραφή της στήλης C Στήλες ("C"). Διαγραφή εύρους ("A15"). Επιλέξτε Τέλος υπο. 

Αν σας άρεσε αυτό το blog, μοιραστείτε το με τους φίλους σας στο Facebook. Επίσης, μπορείτε να μας ακολουθήσετε στο Twitter και το Facebook.

Θα θέλαμε πολύ να σας ακούσουμε, ενημερώστε μας πώς μπορούμε να βελτιώσουμε το έργο μας και να το κάνουμε καλύτερο για εσάς. Γράψτε μας στον ιστότοπο email

Θα βοηθήσει στην ανάπτυξη του τόπου, μοιράζονται τη σελίδα με τους φίλους σας

wave wave wave wave wave