Πίνακας περιεχομένων:
Βίντεο: Upgraded URLs Hangout on Air 2025
Μερικές φορές μπορεί να θέλετε να διαγράψετε όλα εκτός από το ενεργό φύλλο εργασίας σε ένα βιβλίο εργασίας του Excel. Σε αυτές τις περιπτώσεις, μπορείτε να χρησιμοποιήσετε την ακόλουθη μακροεντολή.
Πώς λειτουργεί η μακροεντολή
Η μακροεντολή εδώ περιστρέφεται μέσω των φύλλων εργασίας, ταιριάζοντας με κάθε όνομα φύλλου εργασίας στο όνομα του ενεργού φύλλου. Κάθε φορά που η μακροεντολή βρόχων, διαγράφει οποιοδήποτε αξεπέραστο φύλλο εργασίας. Σημειώστε τη χρήση της ιδιότητας DisplayAlerts στο βήμα 4. Αυτό απενεργοποιεί αποτελεσματικά τις προειδοποιήσεις του Excel έτσι δεν χρειάζεται να επιβεβαιώνετε κάθε διαγραφή.
Sub Macro1 () 'Βήμα 1: Δηλώστε τις μεταβλητές σας Dim ws ως φύλλο εργασίας' Βήμα 2: Ξεκινήστε το βρόχο σε όλα τα φύλλα εργασίας Για κάθε ws Στο ThisWorkbook. Φύλλα εργασίας "Βήμα 3: Ελέγξτε κάθε όνομα φύλλου εργασίας Εάν ws. Ονομάστε το ThisWorkbook. ActiveSheet. Name Then 'Βήμα 4: Απενεργοποιήστε τις προειδοποιήσεις και διαγράψτε την εφαρμογή. DisplayAlerts = False ws. Διαγραφή εφαρμογής. DisplayAlerts = True End Αν 'Βήμα 5: Βρόχος στο επόμενο φύλλο εργασίας Επόμενο ws End Sub
Η μακροεντολή δηλώνει πρώτα ένα αντικείμενο που ονομάζεται ws. Αυτό το βήμα δημιουργεί ένα δοχείο μνήμης για κάθε φύλλο εργασίας που ξεπερνάει.
Στο βήμα 2, η μακροεντολή αρχίζει να βγάζει, λέγοντας στο Excel ότι θα αξιολογήσει όλα τα φύλλα εργασίας αυτού του βιβλίου εργασίας. Υπάρχει μια διαφορά μεταξύ του ThisWorkbook και του ActiveWorkbook. Το αντικείμενο ThisWorkBook αναφέρεται στο βιβλίο εργασίας που περιέχει τον κώδικα. Το αντικείμενο ActiveWorkBook αναφέρεται στο τρέχον ενεργό βιβλίο εργασίας. Επιστρέφουν συχνά το ίδιο αντικείμενο, αλλά αν το βιβλίο εργασίας που εκτελεί τον κώδικα δεν είναι το ενεργό βιβλίο εργασίας, επιστρέφουν διαφορετικά αντικείμενα. Σε αυτήν την περίπτωση, δεν θέλετε να διακινδυνεύσετε τη διαγραφή φύλλων σε άλλα βιβλία εργασίας, επομένως χρησιμοποιείτε το ThisWorkBook.
Στο βήμα 3, η μακροεντολή συγκρίνει απλώς το ενεργό όνομα φύλλου με το φύλλο που βρίσκεται προς το παρόν σε βρόχο.
Στο βήμα 4, εάν τα ονόματα των φύλλων είναι διαφορετικά, η μακροεντολή διαγράφει το φύλλο. Όπως αναφέρθηκε, χρησιμοποιείτε το DisplayAlerts για να καταργήσετε τους ελέγχους επιβεβαίωσης από το Excel. Αν θέλετε να προειδοποιήσετε πριν διαγράψετε τα φύλλα, μπορείτε να παραλείψετε την εφαρμογή. DisplayAlerts = False. Η παράλειψη της δήλωσης DisplayAlerts θα διασφαλίσει ότι θα εμφανιστεί το μήνυμα, επιτρέποντάς σας να αποφύγετε την απόφαση να διαγράψετε φύλλα εργασίας.
Στο βήμα 5, η μακροεντολή επιστρέφει για να πάρει το επόμενο φύλλο. Αφού αξιολογηθούν όλα τα φύλλα, η μακροεντολή τελειώνει.
Παραλείψτε τη δήλωση προειδοποιήσεων οθόνης για να δείτε προειδοποιητικά μηνύματα.Για να χρησιμοποιήσετε τη μακροεντολή
Για να εφαρμόσετε αυτήν τη μακροεντολή, μπορείτε να την αντιγράψετε και να την επικολλήσετε σε μια τυποποιημένη ενότητα:
-
Ενεργοποιήστε τον επεξεργαστή της Visual Basic πατώντας Alt + F11.
-
Κάντε δεξί κλικ στο όνομα του έργου / βιβλίου εργασίας στο παράθυρο του έργου.
-
Επιλέξτε Εισαγωγή → Ενότητα.
-
Πληκτρολογήστε ή επικολλήστε τον κώδικα στη νεοδημιουργηθείσα ενότητα.
Όταν χρησιμοποιείτε το ThisWorkbook αντί του ActiveWorkbook σε μια μακροεντολή, δεν μπορείτε να εκτελέσετε τη μακροεντολή από το βιβλίο εργασίας προσωπικών μακροεντολών. Γιατί; Επειδή το WorksWorkbook θα αναφέρεται στο βιβλίο εργασίας προσωπικών μακροεντολών και όχι στο βιβλίο εργασίας στο οποίο πρέπει να εφαρμοστεί η μακροεντολή.