Πίνακας περιεχομένων
Εάν εργάζεστε με το Microsoft Excel για κάποιο χρονικό διάστημα, γνωρίζετε τη σημασία της Αυτόματης συμπλήρωσης. Για να αντιγράψουμε έναν τύπο σε όλη τη γραμμή ή τη στήλη, χρησιμοποιούμε αυτή τη μέθοδο. Τώρα, μπορούμε να το χρησιμοποιήσουμε αυτό με το χέρι με το ποντίκι. Αλλά, εάν έχετε μια μεγάλη γραμμή με δεδομένα, θα είναι δύσκολο να αντιγράψετε οποιονδήποτε τύπο στην τελευταία γραμμή ή στήλη. Μπορείτε να χρησιμοποιήσετε τον κώδικα VBA για την Αυτόματη συμπλήρωση ενός τύπου στην τελευταία γραμμή ή στήλη με τοανάπαυση.
Σε αυτό το σεμινάριο, θα μάθετε να συμπληρώνετε αυτόματα έναν τύπο στην τελευταία γραμμή του Excel χρησιμοποιώντας κώδικες VBA. Αυτό το σεμινάριο θα είναι επίκαιρο με κατάλληλα παραδείγματα και κατάλληλες εικόνες. Έτσι, μείνετε μαζί μας.
Κατεβάστε το βιβλίο ασκήσεων
Φόρμουλα αυτόματης συμπλήρωσης στην τελευταία row.xlsm
Τι είναι η αυτόματη συμπλήρωση στο Excel;
Τώρα, η αυτόματη συμπλήρωση είναι μια ενσωματωμένη λειτουργία του Microsoft Excel που επιτρέπει στους χρήστες να γεμίζουν αυτόματα τις υπόλοιπες γραμμές ή στήλες με τιμές, μορφές ή τύπους. Μπορείτε να την αναγνωρίσετε όταν μεταφέρετε τον κέρσορα στη δεξιά κάτω γωνία οποιουδήποτε κελιού. Την ονομάζουμε χειριστή αυτόματης συμπλήρωσης του Excel.
Ρίξτε μια ματιά στο ακόλουθο στιγμιότυπο οθόνης:
Εδώ, μπορείτε να δείτε δύο αριθμούς. Θα συμπληρώσουμε τις υπόλοιπες γραμμές χρησιμοποιώντας την αυτόματη συμπλήρωση του Excel.
Αρχικά, επιλέξτε την περιοχή των κελιών B5:B6. Μετά από αυτό, θα δείτε τη λαβή αυτόματης συμπλήρωσης στη δεξιά κάτω γωνία.
Τώρα, σύρετε αυτή τη λαβή αυτόματης συμπλήρωσης προς τα κάτω.
Όπως μπορείτε να δείτε, το Excel συμπλήρωσε αυτόματα τα υπόλοιπα κελιά. Αυτή είναι η βασική χρήση της αυτόματης συμπλήρωσης στο Excel.
Πώς να χρησιμοποιήσετε την αυτόματη συμπλήρωση με το Excel VBA
Εάν έχετε μεγάλο αριθμό γραμμών ή στηλών σε μια συγκεκριμένη περιοχή, πρέπει να σύρετε τη λαβή αυτόματης συμπλήρωσης στην τελευταία γραμμή ή στήλη. Πρόκειται για μια πολύ ταραχώδη διαδικασία. Ευτυχώς μπορείτε να την ελαχιστοποιήσετε χρησιμοποιώντας τους κώδικες VBA στο Excel. Μπορείτε να χρησιμοποιήσετε τον κώδικα VBA για την αυτόματη συμπλήρωση των κελιών με τιμές, τύπους ή μορφές.
Το γενικό συντακτικό:
Range.AutoFill Προορισμός, Τύπος
Ορίστε,
Range("B5"): Το κελί που έχει το κύριο μοτίβο για να γεμίσει την υπόλοιπη σειρά.
Προορισμός: Εύρος κελιών όπου θέλετε να συμπληρώσετε τη σειρά μοτίβων.
Τύπος ως xlAutoFillType: Ο τύπος συμπλήρωσης σειράς. Υπάρχουν διάφοροι τύποι αυτόματης συμπλήρωσης που μπορείτε να επιλέξετε.
Διαβάστε περισσότερα: Πώς να χρησιμοποιήσετε την αυτόματη συμπλήρωση VBA στο Excel
4 τύποι αυτόματης συμπλήρωσης στο Excel VBA
Σε αυτή την ενότητα, θα συζητήσω μερικούς από τους τύπους αυτόματης συμπλήρωσης. Είδαμε ήδη ότι μπορούμε να επιλέξουμε οποιονδήποτε τύπο αυτόματης συμπλήρωσης χρησιμοποιώντας την επιλογή xlAutoFillType. Εδώ, σας παρουσιάζω μερικά παραδείγματα.
1. xlFillDefault
Είδαμε ήδη αυτό το είδος αυτόματης συμπλήρωσης στο προηγούμενο παράδειγμα.
Ρίξτε μια ματιά στο στιγμιότυπο οθόνης:
Πληκτρολογήστε τον ακόλουθο κώδικα VBA για την αυτόματη συμπλήρωση των υπόλοιπων κελιών:
Sub xlDefault_type() Range("B5:B6").AutoFill Destination:=Range("B5:B11"), Type:=xlFillDefault End Sub
Τώρα, εκτελέστε τη μακροεντολή VBA και μετά από αυτό, θα δείτε τα εξής:
Συμπληρώνει αυτόματα τα υπόλοιπα κελιά χρησιμοποιώντας μακροεντολή VBA.
2. xlFillCopy
Για να αντιγράψετε τις ίδιες τιμές μπορείτε να χρησιμοποιήσετε τον τύπο xlFillCopy στον τύπο αυτόματης συμπλήρωσης.
Ρίξτε μια ματιά στο στιγμιότυπο οθόνης:
Πληκτρολογήστε τον ακόλουθο κώδικα VBA για την αυτόματη συμπλήρωση των υπόλοιπων κελιών:
Sub xlFillCopy_type() Range("B5:B6").AutoFill Destination:=Range("B5:B11"), Type:=xlFillCopy End Sub
Τώρα, εκτελέστε τη μακροεντολή VBA και μετά από αυτό, θα δείτε τα εξής:
Το Excel γεμίζει τα υπόλοιπα κελιά με το ίδιο μοτίβο τιμών.
3. xlFillMonths
Μπορείτε επίσης να συμπληρώσετε μήνες χρησιμοποιώντας το xlFillMonths τύπος αυτόματης συμπλήρωσης.
Ρίξτε μια ματιά στο στιγμιότυπο οθόνης:
Εδώ, έχουμε εισέλθει σε δύο μήνες, τον Ιανουάριο και τον Φεβρουάριο.
Πληκτρολογήστε τον ακόλουθο κώδικα VBA για την αυτόματη συμπλήρωση των υπόλοιπων κελιών:
Sub xlFillMonths_type() Range("B5:B6").AutoFill Destination:=Range("B5:B11"), Type:=xlFillMonths End Sub
Τώρα, εκτελέστε τη μακροεντολή VBA και μετά από αυτό, θα δείτε τα εξής:
Το Excel κατανοεί αυτόματα τα μοτίβα και τα συμπληρώνει με αυτά.
4. xlFillFormats
Μπορείτε επίσης να αντιγράψετε μορφές σε άλλα κελιά χρησιμοποιώντας την αυτόματη συμπλήρωση της VBA. Για αυτό, πρέπει να χρησιμοποιήσετε την εντολή xlFillFormats τύπος αυτόματης συμπλήρωσης.
Ρίξτε μια ματιά στο στιγμιότυπο οθόνης:
Εδώ, έχουμε γεμίσει τα δύο κελιά με κάποια χρώματα.
Τώρα, πληκτρολογήστε τον ακόλουθο κώδικα VBA για την αυτόματη συμπλήρωση των υπόλοιπων κελιών:
Sub xlFillFormats_type() Range("B5:B6").AutoFill Destination:=Range("B5:B11"), Type:=xlFillFormats End Sub
Τώρα, εκτελέστε τη μακροεντολή VBA και μετά από αυτό, θα δείτε τα εξής:
Όπως μπορείτε να δείτε, η μακροεντολή VBA χρησιμοποιεί την αυτόματη συμπλήρωση για να γεμίσει αποτελεσματικά τις γραμμές της στήλης Β.
Διαβάστε περισσότερα: Πώς να συμπληρώνετε αυτόματα τους μήνες στο Excel
5 παραδείγματα με τύπο αυτόματης συμπλήρωσης στην τελευταία σειρά στο Excel VBA
1. VBA για την αυτόματη συμπλήρωση ενός τύπου στην τελευταία χρησιμοποιούμενη γραμμή
Ομοίως, μπορείτε να συμπληρώσετε αυτόματα έναν τύπο χρησιμοποιώντας το VBA. αν έχετε διαβάσει τις προηγούμενες ενότητες, μπορείτε εύκολα να το εκτελέσετε αυτό. Το πρόβλημα προκύπτει όταν πρέπει να συμπληρώσετε αυτόματα τον τύπο στην τελευταία γραμμή. Πρέπει πρώτα να προσδιορίσετε την τελευταία γραμμή που χρησιμοποιήθηκε. Μετά από αυτό, ο κώδικας VBA θα τις συμπληρώσει αυτόματα.
Ρίξτε μια ματιά στο ακόλουθο σύνολο δεδομένων:
Εδώ, έχουμε ένα σύνολο δεδομένων πωλήσεων κάποιων πωλητών. Στόχος μας είναι να προσθέσουμε τις πωλήσεις του Ιανουαρίου και του Φεβρουαρίου στη στήλη Σύνολο. Στη συνέχεια, θα χρησιμοποιήσουμε τη μέθοδο αυτόματης συμπλήρωσης με τη χρήση της VBA στην τελευταία χρησιμοποιούμενη γραμμή του Excel.
Για να το εκτελέσετε, πληκτρολογήστε τον ακόλουθο κώδικα:
Sub last_used_row() Dim last_row As Long last_row = Cells(Rows.Count, 2).End(xlUp).Row Range("E5").Formula = "=SUM(C5:D5)" Range("E5").AutoFill Destination:=Range("E5:E" & last_row) End Sub
last_row = Cells(Rows.Count, 2).End(xlUp).Row: Επιστρέφει την τελευταία γραμμή που χρησιμοποιήθηκε από τη στήλη B. Μπορείτε να επιλέξετε οποιαδήποτε στήλη από το σύνολο δεδομένων σας.
Range("E5").Formula = "=SUM(C5:D5)": Προσθέτουμε τις πωλήσεις των Κύτταρο C5 και D5.
Range("E5").AutoFill Destination:=Range("E5:E" & last_row): Αφού λάβουμε το αποτέλεσμα, χρησιμοποιούμε την αυτόματη συμπλήρωση. Κύτταρο E5 στην τελευταία γραμμή που χρησιμοποιήθηκε προηγουμένως.
Τώρα, εκτελέστε τη μακροεντολή VBA. Μετά από αυτό, θα δείτε την ακόλουθη έξοδο:
Όπως μπορείτε να δείτε, ο κώδικάς μας VBA προσθέτει το πρώτο αποτέλεσμα και την αυτόματη συμπλήρωση του τύπου στην τελευταία γραμμή του Excel.
Διαβάστε περισσότερα: Πώς να συμπληρώσετε την τελευταία γραμμή με δεδομένα στο Excel
2. VBA AutoFill από το ActiveCell στην τελευταία σειρά
Τώρα, αν δεν θέλετε να χρησιμοποιήσετε τη συγκεκριμένη περιοχή στη μέθοδο αυτόματης συμπλήρωσης, μπορείτε να χρησιμοποιήσετε τις τιμές, τους τύπους ή τις μορφές του ενεργού κελιού. Όταν κάνετε κλικ σε ένα κελί και θέλετε να συμπληρώσετε αυτόματα τις υπόλοιπες γραμμές με τον τύπο του ενεργού κελιού, χρησιμοποιήστε αυτή τη μέθοδο.
Είναι παρόμοιο με το προηγούμενο παράδειγμα. Χρησιμοποιούμε το προηγούμενο σύνολο δεδομένων:
Τώρα, θα προσθέσουμε τις πωλήσεις του Ιανουαρίου και του Φεβρουαρίου και θα συμπληρώσουμε αυτόματα τον τύπο στην τελευταία γραμμή χρησιμοποιώντας το Excel VBA.
Τώρα, πληκτρολογήστε τον ακόλουθο κώδικα:
Sub autofill_active_cell() Dim last_row As Long last_row = Cells(Rows.Count, 2).End(xlUp).Row ActiveCell.Formula = "=SUM(C5:D5)" ActiveCell.AutoFill Destination:=Range(ActiveCell.Address & ":E" & last_row) End Sub
last_row = Cells(Rows.Count, 2).End(xlUp).Row: Επιστρέφει την τελευταία γραμμή που χρησιμοποιήθηκε από τη στήλη B. Μπορείτε να επιλέξετε οποιαδήποτε στήλη από το σύνολο δεδομένων σας.
ActiveCell.Formula = "=SUM(C5:D5)": Προσθέτουμε τις πωλήσεις των Κύτταρο C5 και D5 στο επιλεγμένο κελί σας.
ActiveCell.AutoFill Destination:=Range(ActiveCell.Address & ":E" & last_row): Αφού λάβουμε το αποτέλεσμα, χρησιμοποιούμε την αυτόματη συμπλήρωση. Ξεκινάει η αυτόματη συμπλήρωση από το ενεργό κελί μέχρι την τελευταία χρησιμοποιούμενη γραμμή που πήραμε προηγουμένως.
Τώρα, επιλέξτε Κύτταρο E5 .
Στη συνέχεια, εκτελέστε τη μακροεντολή VBA για να προσθέσετε τον τύπο και την αυτόματη συμπλήρωση στην τελευταία γραμμή.
Όπως μπορείτε να δείτε, χρησιμοποιήσαμε με επιτυχία τη μακροεντολή VBA για την αυτόματη συμπλήρωση του τύπου στην τελευταία γραμμή.
Παρόμοιες αναγνώσεις
- Πώς να επαναλάβετε σειρές καθορισμένου αριθμού φορών στο Excel (4 τρόποι)
- Αυτόματη αρίθμηση σειρών στο Excel (8 μέθοδοι)
- Πώς να συμπληρώσετε τη στήλη στο Excel με την ίδια τιμή (9 κόλπα)
- Εφαρμογή συντόμευσης αυτόματης συμπλήρωσης στο Excel (7 μέθοδοι)
3. Αυτόματη συμπλήρωση στην τελευταία σειρά χρησιμοποιώντας το δυναμικό εύρος με το Excel VBA
Προηγουμένως σας δείξαμε μερικές μακροεντολές VBA για την αυτόματη συμπλήρωση στην τελευταία γραμμή στο Excel. Τώρα, σε αυτά τα παραδείγματα, χρησιμοποιήσαμε ήδη δυναμικές περιοχές.
Για να κατανοήσετε τις στατικές περιοχές, ρίξτε μια ματιά στον ακόλουθο κώδικα:
Sub last_used_row() Range("E5").Formula = "=SUM(C5:D5)" Range("E5").AutoFill Destination:=Range("E5:E11") End Sub
Βασικά είπαμε στο Excel να εισάγει έναν τύπο στο Κύτταρο E5 και αυτόματη συμπλήρωση από το Κύτταρο E5 στο Κύτταρο E11 Εδώ, καθορίσαμε το εύρος. Τι γίνεται αν προσθέσετε περισσότερες γραμμές; Σε αυτή την περίπτωση, η VBA μας δεν θα συμπληρώσει αυτόματα αυτές τις επιπλέον γραμμές, επειδή της έχουμε ήδη πει να συμπληρώσει αυτόματα ένα συγκεκριμένο εύρος.
Για την επίλυση αυτού του προβλήματος βρήκα μια λύση που μπορεί να λάβει ένα δυναμικό εύρος:
Sub last_used_row() Dim last_row As Long last_row = Cells(Rows.Count, 2).End(xlUp).Row Range("E5").Formula = "=SUM(C5:D5)" Range("E5").AutoFill Destination:=Range("E5:E" & last_row) End Sub
Όπως μπορείτε να δείτε, βρίσκουμε πρώτα την τελευταία γραμμή με αυτή τη γραμμή κώδικα:
last_row = Cells(Rows.Count, 2).End(xlUp).Row
Μετά από αυτό, συμπληρώνουμε αυτόματα την τελευταία σειρά χρησιμοποιώντας το δυναμικό εύρος:
Range("E5").AutoFill Destination:=Range("E5:E" & last_row)
Ανεξάρτητα από το πόσες γραμμές θα προσθέσετε στο σύνολο δεδομένων σας, αυτός ο κώδικας VBA θα καταφέρει να τις εντοπίσει. Και θα τις συμπληρώσει αυτόματα με τον τύπο.
Το δυναμικό εύρος σημαίνει ουσιαστικά ότι δεν χρειάζεται να εισάγετε το εύρος χειροκίνητα. Το Excel θα το ενημερώνει από καιρό σε καιρό.
Διαβάστε περισσότερα: Excel VBA: Η μέθοδος αυτόματης συμπλήρωσης της κλάσης Range απέτυχε
4. Αυτόματη συμπλήρωση στην τελευταία στήλη στο Excel χρησιμοποιώντας το VBA
Εάν έχετε διαβάσει τις προηγούμενες ενότητες για την αυτόματη συμπλήρωση στην τελευταία γραμμή, τότε μπορείτε να κάνετε αυτόματη συμπλήρωση στην τελευταία στήλη εύκολα. Πρέπει απλώς να βρείτε τον αριθμό της τελευταίας στήλης και να τον συμπληρώσετε αυτόματα με το Excel VBA.
Ρίξτε μια ματιά στο ακόλουθο σύνολο δεδομένων:
Εδώ, έχουμε ένα σύνολο δεδομένων που αντιπροσωπεύει τον προϋπολογισμό 3 μηνών ενός ατόμου. Τώρα, θα προσθέσουμε τα έξοδα όλων των μηνών και θα συμπληρώσουμε αυτόματα τον τύπο στην τελευταία στήλη χρησιμοποιώντας το Excel VBA.
Τώρα, πληκτρολογήστε τον ακόλουθο κώδικα:
Sub last_used_column() Dim last_row As Long last_column = Cells(6, Columns.Count).End(xlToLeft).Column Range("D9").Formula = "=SUM(D6:D8)" Range("D9").AutoFill Destination:=Range("D9", Cells(9, last_column)) End Sub
last_column = Cells(6, Columns.Count).End(xlToLeft).Column: Επιστρέφει την τελευταία χρησιμοποιούμενη στήλη από τη γραμμή 6. Μπορείτε να επιλέξετε οποιαδήποτε γραμμή για να ξεκινήσετε από το σύνολο δεδομένων σας.
Range("D9").Formula = "=SUM(D6:D8)": Προσθέτουμε τα έξοδα των τρεις μήνες (Ιανουάριος, Φεβρουάριος, Μάρτιος).
Range("D9").AutoFill Destination:=Range("D9", Cells(9, last_column)): Αφού πάρουμε το αποτέλεσμα, χρησιμοποιούμε την αυτόματη συμπλήρωση. Εδώ, η κύρια γραμμή μας είναι η γραμμή με αριθμό 9. Όλα τα δεδομένα μας θα βρίσκονται σε αυτή τη γραμμή. Ξεκινάει η αυτόματη συμπλήρωση από τη στήλη D στην τελευταία χρησιμοποιημένη στήλη που πήραμε προηγουμένως από την last_column .
Μετά την εκτέλεση της μακροεντολής, θα δείτε την ακόλουθη έξοδο:
Όπως μπορείτε να δείτε, χρησιμοποιήσαμε με επιτυχία το VBA για την αυτόματη συμπλήρωση του τύπου στην τελευταία στήλη του Excel.
Διαβάστε περισσότερα: Πώς να συμπληρώσετε αυτόματα μια στήλη στο Excel
5. Αυτόματη συμπλήρωση διαδοχικών αριθμών στην τελευταία σειρά στο Excel χρησιμοποιώντας το VBA
Μπορείτε επίσης να συμπληρώσετε αυτόματα διαδοχικούς αριθμούς χρησιμοποιώντας την αυτόματη συμπλήρωση στη VBA. Εδώ, πρέπει να χρησιμοποιήσετε xlFillSeries στο τύπο αυτόματης συμπλήρωσης. Το Excel θα καταλάβει το μοτίβο και θα τα συμπληρώσει με αυτό.
Ρίξτε μια ματιά στο ακόλουθο στιγμιότυπο οθόνης:
Εδώ, έχουμε κάποια ονόματα. Και θέλουμε να τους δώσουμε ένα αναγνωριστικό με διαδοχικό τρόπο. Για να το κάνουμε αυτό, θα χρησιμοποιήσουμε την αυτόματη συμπλήρωση της VBA.
Αυτόματη συμπλήρωση διαδοχικών αριθμών με στατικό εύρος:
Sub sequential_number_2() Range("C5").AutoFill Destination:=Range("C5:C11"), Type:=xlFillSeries End Sub
Μετά την εκτέλεση του κώδικα, θα δείτε την έξοδο:
Αν θέλετε να χρησιμοποιήσετε το δυναμικό εύρος, τότε χρησιμοποιήστε τον ακόλουθο κώδικα:
Sub sequential_number_1() Dim last_row As Long last_row = Cells(Rows.Count, 2).End(xlUp).Row Range("C5").AutoFill Destination:=Range("C5:C" & last_row), Type:=xlFillSeries End Sub
last_row = Cells(Rows.Count, 2).End(xlUp).Row: Επιστρέφει την τελευταία χρησιμοποιούμενη γραμμή από τη στήλη B.
Range("C5").AutoFill Destination:=Range("C5:C" & last_row), Type:=xlFillSeries: Θα λάβει το αναγνωριστικό Κύτταρο C5 και αυτόματη συμπλήρωση στην τελευταία γραμμή που χρησιμοποιήθηκε στη Στήλη C χρησιμοποιώντας το xlFillSeries ,
Και στις δύο περιπτώσεις, θα λάβετε την ίδια έξοδο:
Όπως μπορείτε να δείτε, χρησιμοποιήσαμε με επιτυχία τον κώδικα VBA για την αυτόματη συμπλήρωση διαδοχικών αριθμών στο Excel.
Διαβάστε περισσότερα: Τύποι του Excel για τη συμπλήρωση αριθμών ακολουθίας Παραλείψτε κρυφές σειρές
💬 Πράγματα που πρέπει να θυμάστε
✎ Μπορείτε να σταματήστε την αυτόματη συμπλήρωση με διάφορους τρόπους αν δεν το θέλετε .
✎ Δεν μπορείτε να συμπληρώσετε αυτόματα πολλές γραμμές και στήλες ταυτόχρονα. Κάντε το μία προς μία.
Συμπέρασμα
Εν κατακλείδι, ελπίζω αυτό το σεμινάριο να σας έδωσε ένα κομμάτι χρήσιμης γνώσης για την αυτόματη συμπλήρωση του τύπου στην τελευταία γραμμή χρησιμοποιώντας τους κωδικούς VBA. Σας συνιστούμε να μάθετε και να εφαρμόσετε όλες αυτές τις οδηγίες στο σύνολο δεδομένων σας. Κατεβάστε το βιβλίο εργασίας πρακτικής και δοκιμάστε τα μόνοι σας. Επίσης, μη διστάσετε να δώσετε σχόλια στην ενότητα σχολίων. Τα πολύτιμα σχόλιά σας μας δίνουν κίνητρο να δημιουργούμε σεμινάρια όπως τοαυτό.
Μην ξεχάσετε να ελέγξετε την ιστοσελίδα μας Exceldemy.com για διάφορα προβλήματα και λύσεις που σχετίζονται με το Excel.
Συνεχίστε να μαθαίνετε νέες μεθόδους και να εξελίσσεστε!