Note: The other languages of the website are Google-translated. Back to English

Πώς να διαγράψετε το φύλλο εργασίας με βάση την τιμή κελιού στο Excel;

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

Διαγράψτε το φύλλο εργασίας με βάση την τιμή κελιού με τον κώδικα VBA


βέλος μπλε δεξιά φούσκα Διαγράψτε το φύλλο εργασίας με βάση την τιμή κελιού με τον κώδικα VBA

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

1. Κρατήστε πατημένο το ALT + F11 για να ανοίξετε το Microsoft Visual Basic για εφαρμογές παράθυρο.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο Μονάδα μέτρησης Παράθυρο.

Κωδικός VBA: Διαγραφή φύλλου εργασίας με βάση την τιμή κελιού:

Sub deletesheetbycell()
'Updateby Extendoffice
    Dim shName As String
    Dim xName As String
    Dim xWs As Worksheet
    Dim cnt As Integer
    shName = Application.InputBox("Input the text to delete the sheets based on:", "Kutools for Excel", _
                                    "", , , , , 2)
    Application.DisplayAlerts = False
    cnt = 0
    For Each xWs In ThisWorkbook.Sheets
        If xWs.Range("A1").Value = shName Then
            xWs.delete
            cnt = cnt + 1
        End If
    Next xWs
    Application.DisplayAlerts = True
    MsgBox "Have deleted" & cnt & "worksheets", vbInformation, "Kutools for Excel"
End Sub

Note: Στον παραπάνω κώδικα, A1 είναι το συγκεκριμένο κελί που περιέχει συγκεκριμένο κείμενο στο οποίο θέλετε να διαγράψετε τα φύλλα βάσει.

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

doc διαγραφή φύλλου ανά κελί 1

4. Και στη συνέχεια κάντε κλικ στο κουμπί OK κουμπί, όλα τα φύλλα στα οποία το κελί A1 έχει το κείμενο KTE έχουν διαγραφεί ταυτόχρονα. Δείτε το στιγμιότυπο οθόνης:

doc διαγραφή φύλλου ανά κελί 2


Τα καλύτερα εργαλεία παραγωγικότητας του Office

Το Kutools για Excel λύνει τα περισσότερα από τα προβλήματά σας και αυξάνει την παραγωγικότητά σας κατά 80%

  • Επαναχρησιμοποίηση: Εισαγάγετε γρήγορα σύνθετοι τύποι, γραφήματα και οτιδήποτε έχετε χρησιμοποιήσει στο παρελθόν. Κρυπτογράφηση κυττάρων με κωδικό πρόσβασης Δημιουργία λίστας αλληλογραφίας και στείλτε email ...
  • Super Formula Bar (επεξεργαστείτε εύκολα πολλές γραμμές κειμένου και τύπου). Διάταξη ανάγνωσης (εύκολη ανάγνωση και επεξεργασία μεγάλου αριθμού κελιών). Επικόλληση σε φιλτραρισμένο εύρος...
  • Συγχώνευση κελιών / σειρών / στηλών χωρίς απώλεια δεδομένων · Περιεχόμενο διαχωρισμού κελιών Συνδυάστε διπλές σειρές / στήλες... Αποτροπή διπλών κυττάρων; Συγκρίνετε τα εύρη...
  • Επιλέξτε Διπλότυπο ή Μοναδικό Σειρές; Επιλέξτε Κενές σειρές (όλα τα κελιά είναι κενά). Σούπερ εύρεση και ασαφής εύρεση σε πολλά βιβλία εργασίας. Τυχαία επιλογή ...
  • Ακριβές αντίγραφο Πολλαπλά κελιά χωρίς αλλαγή της αναφοράς τύπου. Αυτόματη δημιουργία αναφορών σε πολλαπλά φύλλα? Εισαγωγή κουκκίδων, Πλαίσια ελέγχου και άλλα ...
  • Εξαγωγή κειμένου, Προσθήκη κειμένου, Κατάργηση κατά θέση, Αφαιρέστε το διάστημα; Δημιουργία και εκτύπωση υποσύνολων σελιδοποίησης. Μετατροπή περιεχομένου και σχολίων μεταξύ κελιών...
  • Σούπερ φίλτρο (αποθηκεύστε και εφαρμόστε σχήματα φίλτρων σε άλλα φύλλα). Προηγμένη ταξινόμηση ανά μήνα / εβδομάδα / ημέρα, συχνότητα και άλλα. Ειδικό φίλτρο με έντονη, πλάγια ...
  • Συνδυάστε βιβλία εργασίας και φύλλα εργασίας; Συγχώνευση πινάκων βάσει βασικών στηλών. Διαχωρίστε τα δεδομένα σε πολλά φύλλα; Μαζική μετατροπή xls, xlsx και PDF...
  • Περισσότερα από 300 ισχυρά χαρακτηριστικά. Υποστηρίζει Office / Excel 2007-2021 και 365. Υποστηρίζει όλες τις γλώσσες. Εύκολη ανάπτυξη στην επιχείρηση ή τον οργανισμό σας. Πλήρεις δυνατότητες δωρεάν δοκιμής 30 ημερών. Εγγύηση επιστροφής χρημάτων 60 ημερών.
kte καρτέλα 201905

Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
κάτω μέρος γραφείου
Σχόλια (4)
Δεν υπάρχουν ακόμη βαθμολογίες. Γίνε ο πρώτος που θα αξιολογήσετε!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
γρήγορη ερώτηση, ο παραπάνω κώδικας λειτουργεί για μένα για τη διαγραφή φύλλων εργασίας που περιέχουν την τιμή που έχει εισαχθεί, αλλά τι γίνεται αν θέλω να διαγράψω φύλλα εργασίας που δεν περιέχουν την τιμή που έχει εισαχθεί. Προσπάθησα να αντικαταστήσω τον τελεστή "=" με τον τελεστή <>", αλλά δεν λειτουργεί. Ευχαριστώ!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Ankur,
Όπως είπατε, πρέπει απλώς να αλλάξετε το "=" σε " <>" όπως παρακάτω κώδικας:

Sub deletesheetbycell()
Dim shName As String
Dim xName As String
Dim xWs ως φύλλο εργασίας
Dim cnt Ως ακέραιος αριθμός
shName = Application.InputBox("Εισαγάγετε το κείμενο χωρίς να διαγράψετε τα φύλλα με βάση:", "Kutools for Excel", _
"", , , , , 2)
Application.DisplayAlerts = False
cnt = 0
Για κάθε xWs σε αυτό το βιβλίο εργασίας.Φύλλα
Αν xWs.Range("A1").Τιμή <> shName Τότε
xWs.Διαγραφή
cnt = cnt + 1
End If
Επόμενα xWs
Application.DisplayAlerts = True
MsgBox "Έχουν διαγραφεί" & cnt & "φύλλα εργασίας", vbInformation, "Kutools for Excel"
Sub End

Παρακαλώ δοκιμάστε, ελπίζω ότι μπορεί να σας βοηθήσει!
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Καλό απόγευμα,
Θα μπορούσατε να μου πείτε εάν υπάρχει τρόπος να απαντήσετε αυτόματα ναι όταν σας ζητηθεί να διαγράψετε το φύλλο; Ευχαριστώ πολύ.
Αυτό το σχόλιο ελαχιστοποιήθηκε από τον συντονιστή του ιστότοπου
Γεια και πάλι, Nevermind στην τελευταία μου ερώτηση. Πρόσθεσα τα ακόλουθα πριν και μετά τη γραμμή Διαγραφή:Application.DisplayAlerts = False
Application.DisplayAlerts = True

Δεν υπάρχουν σχόλια δημοσιεύτηκε ακόμα
Αφήστε τα σχόλιά σας
Δημοσίευση ως επισκέπτης
×
Αξιολογήστε αυτήν την ανάρτηση:
0   Χαρακτήρες
Προτεινόμενες τοποθεσίες

Ακολουθησε μας

Πνευματικά δικαιώματα © 2009 - www.extendoffice.com. | Ολα τα δικαιώματα διατηρούνται. Τροφοδοτείται από ExtendOffice. | Sitemap
Το Microsoft και το λογότυπο του Office είναι εμπορικά σήματα ή σήματα κατατεθέντα της Microsoft Corporation στις Ηνωμένες Πολιτείες ή / και σε άλλες χώρες.
Προστατεύεται από το Sectigo SSL