Τελευταία σειρά 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.

Μέθοδος # 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 + επάνω βέλος κλειδί.

Στο 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.

Now I will delete one more line and run the code and see the dynamism of the code.

Ok, now the result automatically takes the last row.

This is what the dynamic VBA last row code is.

As I showed in the earlier example, change the row number from a numeric value to LR.

Code:

Sub Last_Row_Example2() Dim LR As Long 'For understanding LR = Last Row LR = Cells(Rows.Count, 1).End(xlUp).Row Range("D2").Value = WorksheetFunction.Sum(Range("B2:B" & LR)) End Sub

I have removed B13 and added the variable name LR.

Now it does not matter how many rows you add. It will automatically take the updated reference.

Method #2

We can also find the last row in VBA by using the Range object and special VBA cells property as well.

Code:

Sub Last_Row_Example3() Dim LR As Long LR = Range("A:A").SpecialCells(xlCellTypeLastCell).Row 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

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

Παραγωγή:

ενδιαφέροντα άρθρα...