Τελευταία σειρά VBA | Κορυφαίες 3 μέθοδοι για να βρείτε την τελευταία χρησιμοποιημένη σειρά

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

Excel VBA Last Row

Εάν η σύνταξη του κώδικα είναι η πρώτη πρόοδος που κάνατε στο VBA, τότε το να κάνετε τον κώδικα δυναμικό είναι το επόμενο βήμα για εσάς. Το Excel είναι γεμάτο αναφορές κελιού, τη στιγμή που αναφερόμαστε στο κελί γίνεται σταθερό. Εάν τα δεδομένα μας αυξηθούν, πρέπει να επιστρέψουμε στην αναφορά κελιού και να αλλάξουμε τις αναφορές για να ενημερώσουμε το αποτέλεσμα.

Για παράδειγμα δείτε τον παρακάτω κώδικα.

Κώδικας:

 Sub Last_Row_Example1 () Range ("D2"). Value = WorksheetFunction.Sum (Range ("B2: B7")) End Sub 

Ο παραπάνω κώδικας αναφέρει ότι η τιμή κελιού D2 πρέπει να είναι η άθροιση του εύρους ("B2: B7").

Τώρα θα προσθέσω περισσότερες τιμές στη λίστα.

Τώρα, αν εκτελέσω τον κωδικό, δεν θα μου δώσει το αποτέλεσμα των ενημερώσεων, αλλά εξακολουθεί να παραμένει στο παλιό εύρος, δηλαδή Range ("B2: B7")

Αυτό είναι όπου ο δυναμικός κώδικας είναι πολύ σημαντικός.

Στη διαδικασία δημιουργίας του κώδικα δυναμικού, η εύρεση της τελευταίας γραμμής στη στήλη είναι πολύ σημαντική. Σε αυτό το άρθρο, θα συζητήσουμε τους τρόπους εύρεσης της τελευταίας σειράς στο Excel VBA.

Πώς να βρείτε τη σειρά που χρησιμοποιήθηκε τελευταία στη στήλη;

Ακολουθούν τα παραδείγματα για την εύρεση της τελευταίας γραμμής στο Excel VBA.

Μπορείτε να κατεβάσετε αυτό το Πρότυπο τελευταίας σειράς VBA εδώ - Πρότυπο τελευταίας σειράς VBA

Μέθοδος # 1

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

Θα χρησιμοποιήσουμε το πλήκτρο συντόμευσης Ctrl + κάτω βέλος.

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

Βήμα 1: Ορίστε τη μεταβλητή ως LONG.

Κώδικας:

 Sub Last_Row_Example2 () Dim LR As Long 'Για κατανόηση LR = Last End Row End Sub 

Βήμα 2: Για αυτήν τη μεταβλητή, θα εκχωρήσουμε τον αριθμό γραμμής που χρησιμοποιήθηκε τελευταία.

Κώδικας:

 Sub Last_Row_Example2 () Dim LR As Long 'Για κατανόηση LR = Last Row LR = End Sub 

Βήμα 3: Γράψτε τον κωδικό ως CELLS (Rows.Count,

Κώδικας:

 Sub Last_Row_Example2 () Dim LR As Long 'Για κατανόηση LR = Last Row LR = Cells (Rows.Count, End Sub 

Βήμα 4: Τώρα αναφέρετε τον αριθμό της στήλης ως 1.

Κώδικας:

 Sub Last_Row_Example2 () Dim LR As Long 'Για κατανόηση LR = Last Row LR = Cells (Rows.Count, 1) End Sub 

CELLS (Rows.Count, 1) σημαίνει να μετράτε πόσες σειρές υπάρχουν στην πρώτη στήλη.

Έτσι, ο παραπάνω κώδικας VBA θα μας οδηγήσει στην τελευταία σειρά του φύλλου excel.

Βήμα 5: Εάν βρισκόμαστε στο τελευταίο κελί του φύλλου για να μεταβούμε στην τελευταία γραμμή που χρησιμοποιήσαμε, θα πατήσουμε το πλήκτρο συντόμευσης ως πλήκτρο Ctrl + Up Arrow .

Στο VBA πρέπει να χρησιμοποιήσουμε το πλήκτρο τερματισμού και πάνω, δηλαδή End VBA xlUp

Κώδικας:

 Sub Last_Row_Example2 () Dim LR As Long 'Για κατανόηση LR = Last Row LR = Cells (Rows.Count, 1). End (xlUp) End Sub 

Βήμα 6: Τώρα θα μας οδηγήσει στην τελευταία γραμμή που χρησιμοποιήθηκε από κάτω. Τώρα χρειαζόμαστε τον αριθμό σειράς αυτού. Χρησιμοποιήστε λοιπόν την ιδιότητα ROW για να λάβετε τον αριθμό σειράς.

Κώδικας:

 Sub Last_Row_Example2 () Dim LR As Long 'Για κατανόηση LR = Last Row LR = Cells (Rows.Count, 1). End (xlUp) .Row End Sub 

Βήμα 7: Τώρα η μεταβλητή διατηρεί τον αριθμό γραμμής που χρησιμοποιήθηκε τελευταία. Εμφάνιση της τιμής αυτής της μεταβλητής στο πλαίσιο μηνύματος στον κώδικα VBA.

Κώδικας:

 Sub Last_Row_Example2 () Dim LR As Long 'Για κατανόηση LR = Last Row LR = Cells (Rows.Count, 1). End (xlUp) .Row MsgBox LR End Sub 

Εκτελέστε αυτόν τον κωδικό χρησιμοποιώντας το πλήκτρο F5 ή χειροκίνητα, θα εμφανίσει την τελευταία γραμμή που χρησιμοποιήθηκε.

Παραγωγή:

Η τελευταία γραμμή που χρησιμοποιήθηκε σε αυτό το φύλλο εργασίας είναι 13.

Τώρα θα διαγράψω μια ακόμη γραμμή και θα τρέξω τον κώδικα και θα δω το δυναμισμό του κώδικα.

Εντάξει, τώρα το αποτέλεσμα παίρνει αυτόματα την τελευταία σειρά.

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

Όπως έδειξα στο προηγούμενο παράδειγμα, αλλάξτε τον αριθμό σειράς από μια αριθμητική τιμή σε LR.

Κώδικας:

 Sub Last_Row_Example2 () Dim LR As Long 'Για κατανόηση LR = Last Row LR = Cells (Rows.Count, 1). End (xlUp). Row Range ("D2"). Value = WorksheetFunction.Sum (Range ("B2: B "& LR)) End Sub 

Έχω αφαιρέσει το B13 και πρόσθεσα το όνομα μεταβλητής LR.

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

Μέθοδος # 2

Μπορούμε επίσης να βρούμε την τελευταία σειρά στο VBA χρησιμοποιώντας το αντικείμενο Range και την ιδιότητα ειδικών κελιών VBA.

Κώδικας:

 Sub Last_Row_Example3 () Dim LR As Long LR = Range ("A: A"). SpecialCells (xlCellTypeLastCell). Σειρά MsgBox LR End Sub 

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

Εάν εκτελέσω τον κώδικα χειροκίνητα ή χρησιμοποιώντας το πλήκτρο F5, το αποτέλεσμα θα είναι 12, επειδή το 12 είναι η τελευταία γραμμή που χρησιμοποιήθηκε.

Παραγωγή:

Τώρα θα διαγράψω τη 12η σειρά και θα δω το αποτέλεσμα.

Παρόλο που έχω διαγράψει μια σειρά, εξακολουθεί να δείχνει το αποτέλεσμα ως 12.

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

Έχω αποθηκεύσει το βιβλίο εργασίας και τώρα βλέπω το αποτέλεσμα.

Μέθοδος # 3

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

Κώδικας:

 Sub Last_Row_Example4 () Dim LR As Long LR = ActiveSheet.UsedRange.Rows (ActiveSheet.UsedRange.Rows.Count) .Row MsgBox LR End Sub 

Αυτό θα επιστρέψει επίσης την τελευταία γραμμή που χρησιμοποιήθηκε.

Παραγωγή: