Ταξινόμηση δεδομένων κειμένου με αλφαβητική σειρά χρησιμοποιώντας VBA στο Microsoft Excel

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

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

Τα ακατέργαστα δεδομένα αποτελούνται από τυχαία ονόματα που θέλουμε να ταξινομήσουμε.

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

Δημιουργήσαμε την προσαρμοσμένη συνάρτηση "SortString" για την ταξινόμηση δεδομένων αλφαβητικά. Λαμβάνει εύρος και θέση πηγής ως εισόδους και επιστρέφει τιμές με βάση την καθορισμένη θέση. Αυτή η συνάρτηση δημιουργεί πρώτα έναν ταξινομημένο πίνακα και στη συνέχεια η καθορισμένη θέση χρησιμοποιείται για την εξαγωγή της απαιτούμενης τιμής από τον ταξινομημένο πίνακα.

Επεξήγηση κώδικα

UBound (τιμές)

Η παραπάνω συνάρτηση χρησιμοποιείται για τον υπολογισμό του αριθμού των τιμών μέσα στον πίνακα.

τιμές (j) = τιμές (j - 1)

Ο παραπάνω κώδικας χρησιμοποιείται για τη μετατόπιση τιμών εντός του πίνακα κατά ένα ευρετήριο.

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

 Option Explicit Function SortString (Source As Range, Position As Long) As String 'Δήλωση μεταβλητών Dim Cell As Range Dim τιμές () As String Dim i Sa Long, j As Long Dim Done As Boolean ReDim τιμές (1 έως 1)' Looping through όλα τα κελιά στο εύρος Για κάθε κελί σε πηγή Έγινε = Λάθος i = 1 'Δημιουργία συστοιχίας ταξινομημένου ονόματος Do If Cell.Value <τιμές (i) Τότε Τέλος = Αληθές Άλλο i = i + 1 Τέλος Αν Βρόχος Εφόσον Έγινε = Λάθος Και i <= UBound (τιμές) ReDim Διατήρηση τιμών (1 σε UBound (τιμές) + 1) Εάν i <= UBound (τιμές) Τότε 'Προσαρμογή τιμής στον ταξινομημένο πίνακα ονόματος Για j = UBound (τιμές) Σε i + 1 Βήμα - 1 τιμές (j) = τιμές (j - 1) Επόμενο j Τέλος Εάν τιμές (i) = Cell.Value Next Cell 'Εκχώρηση τιμής της απαιτούμενης θέσης SortString = τιμές (Θέση + 1) Λειτουργία τερματισμού 

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

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

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

wave wave wave wave wave