Αυτόματη συμπλήρωση με μακροεντολή - Παραδείγματα κώδικα VBA

Αυτόματη συμπλήρωση σε VBA

Αυτό το άρθρο δείχνει πώς να χρησιμοποιήσετε την Αυτόματη συμπλήρωση σε VBA.

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

Όλα αυτά μπορούν να γίνουν χρησιμοποιώντας μια μακροεντολή VBA.

Αυτόματη συμπλήρωση με χρήση αυξανόμενων αριθμών

Πρώτον, στον κώδικά μας, μπορούμε να δηλώσουμε δύο μεταβλητές εύρους.

Η επιλογή 1 είναι το εύρος με τα δεδομένα προς αυτόματη συμπλήρωση - για παράδειγμα 1 και 2.

Η επιλογή 2 είναι η ολόκληρος εύρος έως αυτόματη συμπλήρωση, αυτό περιλαμβάνει το πρώτο εύρος συν τα κενά διαστήματα για αυτόματη συμπλήρωση.

Στη συνέχεια, χρησιμοποιούμε τη μέθοδο αυτόματης συμπλήρωσης για να συμπληρώσουμε το δεύτερο εύρος επιλογής.

123456789101112131415 Public Sub MyAutoFill ()από το easyexcel.net«Δήλωση μεταβλητών εύρουςΕλαφριά επιλογή1 Ως εύροςΕλαφριά επιλογή2 Ως εύρος«Ορισμός μεταβλητών εύρους = τα αντίστοιχα εύρη τουςΟρισμός επιλογής1 = Φύλλο1. Εύρος ("A1: A2")Ρύθμιση επιλογής2 = Φύλλο1.Range ("A1: A12")«Αυτόματη συμπλήρωσηselection1.AutoFill Προορισμός: = επιλογή2Τέλος υπο

Στη συνέχεια, μπορούμε να εκτελέσουμε τη μακροεντολή στο Εύρος αυτόματης συμπλήρωσης (A1: A12).

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

Αυτόματη συμπλήρωση με χρήση μηνών

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

1234567891011 Δημόσιος υποσυμπλήρωση μηνών ()από το easyexcel.net«Δήλωση μεταβλητών εύρουςΕλαφριά επιλογή1 Ως εύροςΕλαφριά επιλογή2 Ως εύρος«Ορισμός μεταβλητών εύρους = τα αντίστοιχα εύρη τουςΟρισμός επιλογής1 = Φύλλο1. Εύρος ("A1: A2")Ρύθμιση επιλογής2 = Φύλλο1.Range ("A1: A12")«Αυτόματη συμπλήρωση των μηνώνΠροορισμός αυτόματης συμπλήρωσης: = selection2, Type: = xlFillMonthsΤέλος υπο

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

Το Excel είναι σε θέση να επιλέξει τυπικές σειρές όπως μήνες, ημέρες της εβδομάδας και πρόσθετους αριθμούς χωρίς ωστόσο να χρειάζεται να χρησιμοποιήσει το όρισμα Τύπος.

Αυτόματη συμπλήρωση χρησιμοποιώντας xlFillCopy

Εάν θέλουμε να χρησιμοποιήσουμε μια μακροεντολή AutoFill για να αντιγράψουμε τις πληροφορίες σε νέα κελιά, μπορούμε να χρησιμοποιήσουμε το xlFillCopy Constant.

1234567 Public Sub AutoFillCopy ()Dim Selection1 As RangeDim Selection2 As RangeΟρισμός επιλογής1 = Φύλλο1. Εύρος ("A1: A1")Set Selection2 = Sheet1.Range ("A1: A12")Selection1.AutoFill Προορισμός: = Επιλογή2, Τύπος: = xlFillCopyΤέλος υπο

Η εκτέλεση αυτής της μακροεντολής θα αντιγράψει τα δεδομένα στο εύρος ("A1") έως το εύρος ("A1: A12") αντί να γεμίσει αυτόματα τα κελιά με τους επόμενους μήνες από το "Jan".

Αυτόματη συμπλήρωση χρησιμοποιώντας xlFlashFill

Όταν πρέπει να μετατρέψουμε κείμενο σε στήλες στο Excel, μπορούμε είτε να χρησιμοποιήσουμε την επιλογή κείμενο σε στήλες είτε να χρησιμοποιήσουμε μια επιλογή που ονομάζεται Flash Fill. Αυτό είναι εξαιρετικά χρήσιμο στο VBA.

Πάρτε για παράδειγμα τα ακόλουθα δεδομένα:

Μπορούμε να πληκτρολογήσουμε το επώνυμο "Tolley" στο κελί B2 και στη συνέχεια να χρησιμοποιήσουμε μια μακροεντολή για να συμπληρώσουμε Flash τα υπόλοιπα δεδομένα.

1234567 Υπο FlashFill ()Dim Selection1 As RangeDim Selection2 As RangeSet Selection1 = Range ("B2: B2")Set Selection2 = Range ("B2: B15")Selection1.AutoFill Προορισμός: = Επιλογή2, Τύπος: = xlFlashFillΤέλος υπο

Στη συνέχεια, μπορούμε να επαναλάβουμε αυτό τις στήλες C, D και E για να λάβουμε τα υπόλοιπα δεδομένα.

1234567891011 Set Selection1 = Range ("C2: C2")Set Selection2 = Range ("C2: C15")Selection1.AutoFill Προορισμός: = Επιλογή2, Τύπος: = xlFlashFillSet Selection1 = Range ("D2: D2")Set Selection2 = Range ("D2: D15")Selection1.AutoFill Προορισμός: = Επιλογή2, Τύπος: = xlFlashFillSet Selection1 = Range ("E2: E2")Set Selection2 = Range ("E2: E15")Selection1.AutoFill Προορισμός: = Επιλογή2, Τύπος: = xlFlashFill

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

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

wave wave wave wave wave