Εκκαθάριση περιεχομένων VBA | Πώς να διαγράψετε ή να διαγράψετε περιεχόμενα χρησιμοποιώντας τον κώδικα VBA;

Εκκαθάριση περιεχομένων του Excel VBA

Το καθαρό περιεχόμενο είναι μια μέθοδος στο VBA που χρησιμοποιείται για τη διαγραφή ή την αφαίρεση των τιμών που είναι αποθηκευμένες στα κελιά που παρέχονται σε αυτήν, αυτή η μέθοδος καθιστά την περιοχή κελιών κενή και χρησιμοποιείται με την ιδιότητα εύρους για πρόσβαση στην καθορισμένη περιοχή κελιών, το παράδειγμα Η χρήση αυτής της μεθόδου έχει ως εξής εύρος ("A1: B2"). ClearContents αυτή η μέθοδος θα διαγράψει τα περιεχόμενα των κελιών από A1 έως B2.

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

Τι είναι το Clear Contents στο Excel VBA;

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

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

Τώρα, εάν θέλω να διαγράψω από το κελί A1 έως C3, πρέπει πρώτα να αναφέρουμε το εύρος των κελιών χρησιμοποιώντας το αντικείμενο VBA RANGE.

Κώδικας:

Εύρος ("A1: C3")

Αφού αναφέρουμε το εύρος των κελιών χρησιμοποιώντας το αντικείμενο RANGE, πρέπει να επιλέξουμε τη μέθοδο "Εκκαθάριση" για να απαλείψουμε την αναφορά των τιμών των κελιών.

Κώδικας:

Εύρος ("A1: C3"). Εκκαθάριση

Αυτό θα διαγράψει τις αναφερόμενες τιμές κελιού.

Κώδικας:

 Sub Clear_Example () Range ("A1: C3"). Clear End Sub 

Εκτός από τη σαφή μέθοδο, μπορούμε επίσης να χρησιμοποιήσουμε τη μέθοδο «ΔΙΑΓΡΑΦΗ».

Κώδικας:

Εύρος ("A1: C3"). Διαγραφή

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

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

Φύλλα εργασίας ("Φύλλο1"). Κελιά. Διαγραφή
Φύλλα εργασίας ("Φύλλο1"). Κελιά. Καθαρίστε

Και οι δύο παραπάνω κωδικοί θα διαγράψουν ολόκληρα τα δεδομένα του φύλλου εργασίας "Sheet1". Θα διαγράψει τις τιμές κελιών απευθείας από το πρώτο κελί στο τελευταίο κελί του φύλλου εργασίας.

Εάν θέλετε να διαγράψετε τα υπάρχοντα κελιά φύλλων, τότε μπορείτε να χρησιμοποιήσετε το αντικείμενο Active Sheet.

ActiveSheet.Cells.Delete ή ActiveSheet.Cells.Clear

Διαφορά μεταξύ μεθόδων διαγραφής και διαγραφής

Ξέρω ότι αυτή η ερώτηση έπρεπε να είχε ήδη παίξει στο μυαλό σας.

Ναι, υπάρχει μια διαφορά μεταξύ αυτών των δύο μεθόδων.

Όταν χρησιμοποιείτε τη μέθοδο "Διαγραφή" θα διαγράψει το κελί και το παρακάτω κελί θα αναλάβει τη θέση του διαγραμμένου κελιού.

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

Τώρα θα χρησιμοποιήσω τη μέθοδο διαγραφής για να διαγράψω το κελί A1.

Κώδικας:

 Sub Clear_Example () Range ("A1"). Διαγραφή End Sub 

Θα τρέξω αυτόν τον κωδικό και θα δω τι θα συμβεί.

Κοίτα τι συνέβη εδώ όπως είπα όταν διέγραψα το κελί A1 διαγράφεται, αλλά το κελί A2 μετακινεί ένα κελί προς τα πάνω και καταλαμβάνει το διαγραμμένο κελί. Αυτό θα οδηγήσει σε αναντιστοιχία δεδομένων. Επομένως, προσέξτε κατά τη χρήση της μεθόδου Διαγραφή.

Τώρα για τα ίδια δεδομένα, θα διαγράψω τη μέθοδο.

Κώδικας:

 Sub Clear_Example () Range ("A1"). Clear End Sub 

Τώρα δείτε τι συμβαίνει όταν εκτελώ αυτόν τον κωδικό.

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

Χρησιμοποιήστε τη μέθοδο VBA Clear Contents για να διατηρήσετε τη μορφοποίηση των κελιών

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

Για να διατηρήσουμε τη μορφοποίηση των κελιών, δεν χρειάζεται να χρησιμοποιήσουμε ούτε "Διαγραφή" ούτε "Εκκαθάριση", αλλά πρέπει να χρησιμοποιήσουμε τη μέθοδο "Εκκαθάριση περιεχομένων" της VBA.

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

Μπορούμε να αποκτήσουμε πρόσβαση στο "Διαγραφή", μπορούμε να έχουμε πρόσβαση στο "Εκκαθάριση" και μπορούμε επίσης να χρησιμοποιήσουμε μεθόδους "Διαγραφή"

Επιλέξτε αυτήν τη μέθοδο.

Κώδικας:

 Sub Clear_Example () Range ("A1: C3"). ClearContents End Sub 

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

Όπως μπορείτε να δείτε στην παραπάνω εικόνα έχουμε χρώμα κυψελών σε VBA, περιγράμματα και κάθε μορφοποίηση που σχετίζεται με αυτά τα αναφερόμενα κελιά.

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

Φύλλα εργασίας ("Φύλλο1"). Εύρος ("A1: D10"). ClearContents

Αυτό θα διαγράψει τα περιεχόμενα από τα κελιά A1 έως D10 στο φύλλο "Sheet1".

Παρομοίως, μπορούμε να διαγράψουμε και τα άλλα ανοιχτά κελιά του βιβλίου εργασίας.

Βιβλία εργασίας ("Book1.xlsx"). Φύλλα εργασίας ("Φύλλο1"). Εύρος ("A1: D10"). ClearContents

Βρόχος σε όλα τα φύλλα εργασίας και σαφή περιεχόμενα συγκεκριμένου εύρους

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

Ο παρακάτω κώδικας θα κάνει τη δουλειά.

Κώδικας:

 Sub Clear_All () Dim Ws ως φύλλο εργασίας για κάθε Ws στο ActiveWorkbook.Worksheets Ws.Range ("A1: C15"). ClearContents Next Ws End Sub 

Σημείωση: Μπορείτε να αλλάξετε το εύρος των κελιών σύμφωνα με την επιθυμία σας.

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

Κώδικας:

 Sub Clear_All () Dim Ws ως φύλλο εργασίας για κάθε Ws στο ActiveWorkbook.Wheheets Ws.Cells.ClearContents Next Ws End Sub 

Μπορείτε να κάνετε λήψη αυτού του προτύπου VBA Clear Contents Excel εδώ - Πρότυπο VBA Clear Contents