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

Wie lösche ich ein Arbeitsblatt basierend auf dem Zellenwert in Excel?

Angenommen, ich habe mehrere Arbeitsblätter in einer Arbeitsmappe. Jetzt möchte ich die Blätter basierend auf dem Zellenwert löschen. Wenn beispielsweise die spezifische Zelle A1 den Text "KTE" enthält, müssen alle Blätter, in denen die Zelle A1 diesen Text enthält, sofort gelöscht werden. Dieser Artikel kann Ihnen helfen, diese Aufgabe in Excel zu erledigen.

Löschen Sie das Arbeitsblatt basierend auf dem Zellenwert mit VBA-Code


Pfeil blau rechte Blase Löschen Sie das Arbeitsblatt basierend auf dem Zellenwert mit VBA-Code

Hier werde ich einen Code einführen, mit dem Sie alle Blätter löschen können, für die die jeweilige Zelle einen bestimmten Wert hat. Gehen Sie dazu wie folgt vor:

1. Halten Sie die ALT + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen Fenster.

2. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modul Fenster.

VBA-Code: Arbeitsblatt basierend auf dem Zellenwert löschen:

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

Hinweis: Im obigen Code, A1 ist die spezifische Zelle, die bestimmten Text enthält, auf dessen Grundlage Sie die Blätter löschen möchten.

3. Dann drücken F5 Wenn Sie die Taste drücken, um diesen Code auszuführen, wird ein Eingabeaufforderungsfeld angezeigt, das Sie daran erinnert, den bestimmten Wert einzugeben, auf dessen Grundlage Sie die Blätter löschen möchten. Siehe Abbildung:

doc Blatt durch Zelle 1 löschen

4. Und dann klick OK Schaltfläche, alle Blätter, deren Zelle A1 den Text KTE enthält, wurden auf einmal gelöscht. Siehe Screenshot:

doc Blatt durch Zelle 2 löschen


Die besten Tools für die Office-Produktivität

Kutools for Excel löst die meisten Ihrer Probleme und erhöht Ihre Produktivität um 80%

  • Wiederverwendung: Schnell einfügen komplexe Formeln, Diagramme und alles, was du vorher benutzt hast; Zellen verschlüsseln mit Passwort; Mailingliste erstellen und E-Mails senden ...
  • Super Formelriegel (leicht mehrere Textzeilen und Formeln bearbeiten); Layout lesen (leichtes Lesen und Bearbeiten einer großen Anzahl von Zellen); In gefilterten Bereich einfügen...
  • Zellen / Zeilen / Spalten zusammenführen ohne Daten zu verlieren; Inhalt geteilter Zellen; Kombinieren Sie doppelte Zeilen / Spalten... doppelte Zellen verhindern; Bereiche vergleichen...
  • Wählen Sie Duplizieren oder Eindeutig Reihen; Wählen Sie Leere Zeilen (alle Zellen sind leer); Super Find und Fuzzy Find in vielen Arbeitsmappen; Zufällige Auswahl ...
  • Exakte Kopie Mehrere Zellen ohne Änderung der Formelreferenz; Referenzen automatisch erstellen zu mehreren Blättern; Aufzählungszeichen einfügen, Kontrollkästchen und mehr ...
  • Text extrahieren, Text hinzufügen, Nach Position entfernen, Leerzeichen entfernen;; Paging-Zwischensummen erstellen und drucken; Inhalt und Kommentare zwischen Zellen konvertieren...
  • Superfilter (Speichern und Anwenden von Filterschemata auf andere Blätter); Erweiterte Sortierung nach Monat / Woche / Tag, Häufigkeit und mehr; Spezialfilter fett, kursiv ...
  • Kombinieren Sie Arbeitsmappen und Arbeitsblätter;; Tabellen basierend auf Schlüsselspalten zusammenführen; Daten in mehrere Blätter aufteilen; Batch-Konvertierung von xls, xlsx und PDF...
  • Mehr als 300 leistungsstarke Funktionen. Unterstützt Office / Excel 2007-2021 und 365. Unterstützt alle Sprachen. Einfache Bereitstellung in Ihrem Unternehmen oder Ihrer Organisation. 30-tägige kostenlose Testversion mit allen Funktionen. 60 Tage Geld-zurück-Garantie.
kte tab 201905

Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
officetab unten
Kommentare (4)
Noch keine Bewertungen. Bewerten Sie als Erster!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
kurze Frage, der obige Code funktioniert für mich zum Löschen von Arbeitsblättern, die den eingegebenen Wert enthalten, aber was ist, wenn ich Arbeitsblätter löschen möchte, die keinen eingegebenen Wert enthalten. Ich habe versucht, den "="-Operator durch den <>"-Operator zu ersetzen, aber es funktioniert nicht. Danke!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ankur,
Wie Sie sagten, müssen Sie nur das "=" in " <>" wie im folgenden Code ändern:

Sub deletesheetbycell()
Dimmen Sie shName als Zeichenfolge
Dim xName als Zeichenfolge
Dim xWs als Arbeitsblatt
Dim cnt als ganze Zahl
shName = Application.InputBox("Geben Sie den Text ein und löschen Sie die Blätter nicht basierend auf:", "Kutools for Excel", _
"", , , , , 2)
Application.DisplayAlerts = Falsch
cnt = 0
Für jedes xWs in ThisWorkbook.Sheets
If xWs.Range("A1").Value <> shName Then
xWs.Löschen
cnt = cnt + 1
End If
Nächste xWs
Application.DisplayAlerts = True
MsgBox "Gelöscht haben" & cnt & "Arbeitsblätter", vbInformation, "Kutools for Excel"
End Sub

Bitte versuchen Sie es, ich hoffe, es kann Ihnen helfen!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Guten Tag,
Können Sie mir sagen, ob es eine Möglichkeit gibt, automatisch mit Ja zu antworten, wenn Sie aufgefordert werden, das Blatt zu löschen? Vielen Dank.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo nochmal, vergiss meine letzte Frage. Ich habe Folgendes vor und nach der Delete-Zeile hinzugefügt: Application.DisplayAlerts = False
Application.DisplayAlerts = True

Es sind noch keine Kommentare vorhanden
Hinterlassen Sie Ihre Kommentare
Als Gast posten
×
Bewerte diese Nachricht:
0   Figuren
Vorgeschlagene Standorte

Folgen Sie uns

Copyright © 2009 - www.extendoffice.com. | Alle Rechte vorbehalten. Unterstützt von ExtendOffice. | Sitemap
Microsoft und das Office-Logo sind Marken oder eingetragene Marken der Microsoft Corporation in den USA und / oder anderen Ländern.
Geschützt durch Sectigo SSL