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

Wie kann verhindert werden, dass bestimmte Zelleninhalte in Excel gelöscht werden?

In diesem Artikel wird verhindert, dass bestimmte Zelleninhalte in Excel gelöscht werden. Sie können dies mit den Methoden in diesem Artikel erreichen.

Verhindern Sie das Löschen bestimmter Zelleninhalte, indem Sie das Arbeitsblatt schützen
Verhindern Sie mithilfe von VBA-Code, dass bestimmte Zelleninhalte gelöscht werden


Verhindern Sie das Löschen bestimmter Zelleninhalte, indem Sie das Arbeitsblatt schützen

Standardmäßig sind alle Zellen im Arbeitsblatt gesperrt. Wenn Sie verhindern möchten, dass bestimmte Zellinhalte gelöscht werden, und andere Zellen nach dem Schutz bearbeitbar machen möchten, gehen Sie wie folgt vor.

1. Klicken Sie auf die Klicken Sie auf die Schaltfläche in der oberen linken Ecke des Arbeitsblatts, um das gesamte Arbeitsblatt auszuwählen. Dann drücken Ctrl + 1 Schlüssel zum Öffnen der Format Cells Dialogbox.

2. Beim Auftauchen Format Cells Deaktivieren Sie im Dialogfeld das Kontrollkästchen Verschlossen Option unter dem Schutzschaltungen Klicken Sie auf die Registerkarte und dann auf OK Taste. Siehe Screenshot:

3. Wählen Sie die Zellen aus, in denen der Inhalt nicht gelöscht werden soll, und drücken Sie Ctrl + 1 Tasten zum Öffnen der Format Cells Überprüfen Sie das Dialogfeld erneut Verschlossen Option unter dem Schutzschaltungen Klicken Sie auf die Registerkarte und dann auf OK .

4. Klicken Sie nun auf Bewertungen > SchutzblattGeben Sie dann Ihr Passwort in beiden ein und bestätigen Sie es Schutzblatt und Passwort bestätigen Dialogboxen.

Jetzt ist das Arbeitsblatt geschützt. Und der angegebene Zelleninhalt wird nicht mehr gelöscht.


Verhindern Sie mithilfe von VBA-Code, dass bestimmte Zelleninhalte gelöscht werden

Neben den beiden oben genannten Methoden können Sie VBA-Code ausführen, um zu verhindern, dass bestimmte Zelleninhalte in einem Arbeitsblatt gelöscht werden. Bitte gehen Sie wie folgt vor.

1. Öffnen Sie das Arbeitsblatt, das den Zelleninhalt enthält, den Sie nicht löschen möchten, klicken Sie mit der rechten Maustaste auf die Registerkarte Blatt, und klicken Sie dann auf Code anzeigen aus dem Kontextmenü.

2. Kopieren Sie den folgenden VBA-Code und fügen Sie ihn in das Code-Fenster des ein Microsoft Visual Basic für Applikationen Fenster.

VBA-Code: Verhindern, dass bestimmte Zelleninhalte in Excel gelöscht werden

Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A1:E7")) Is Nothing Then Exit Sub
    On Error GoTo ExitPoint
    Application.EnableEvents = False
    If Not IsDate(Target(1)) Then
        Application.Undo
        MsgBox " You can't delete cell contents from this range " _
        , vbCritical, "Kutools for Excel"
    End If
ExitPoint:
    Application.EnableEvents = True
End Sub

Hinweis: Im Code ist A1: E17 der Bereich, in dem verhindert wird, dass der Zelleninhalt gelöscht wird. Sie können den Bereich nach Ihren Wünschen ändern.

Wenn Sie von nun an versuchen, den Zelleninhalt aus dem Bereich A1: E17 zu löschen, erhalten Sie eine Kutools for Excel Dialogfeld wie im folgenden Screenshot gezeigt, klicken Sie bitte auf die OK .


In Verbindung stehende Artikel:


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 (17)
Bewertet 5 aus 5 · 1 Bewertungen
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Genau das was ich gesucht habe, danke für die Hilfe!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
mach dir keine sorgen immer hier um zu helfen :)
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo,

Ich habe gerade das VBA-Skript ausprobiert und es funktioniert in den meisten Situationen wirklich gut. Es funktioniert jedoch nicht, wenn Sie mit der Tabulatortaste von einer bearbeitbaren Zelle in die nicht bearbeitbare Spalte/Zelle wechseln. Das Problem entsteht dadurch, dass die Fehlermeldung - wie befohlen - ausgegeben wird, aber die Daten, die in die ursprüngliche, bearbeitbare Zelle eingegeben wurden, aus der die Tabulatortaste stammt, nicht beibehalten werden.

Hätten Sie eine Änderung am Skript, damit es die Daten in der bearbeitbaren Zelle akzeptiert, wenn Sie mit der Tabulatortaste in die nicht bearbeitbare Zelle wechseln?

Prost
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Guten Tag,
Ich habe es versucht, wie Sie es in Ihrem Fall erwähnt haben, aber es wird kein Fehler ausgegeben. Würden Sie einen Screenshot Ihres Falls bereitstellen oder mir Ihre Office-Version mitteilen?
Danke für deinen Kommentar.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Wenn Sie nicht auf Ihr Blatt schauen oder VBA-Code schreiben möchten, verwende ich eine einfache Technik, die jegliches Überschreiben verhindert, außer wenn sie die Taste "DELETE" verwenden (Rücktaste ist nicht erlaubt, aber Löschen ist schwer zu stoppen ). Was ich getan habe, ist eine Datenvalidierung mit den folgenden Einstellungen hinzugefügt:

1) Zulassen --> Liste

2) Deaktivieren Sie "Leerzeichen ignorieren" und "In-Cell-Dropdown"

3) Geben Sie in der Quelle zwei doppelte Anführungszeichen ein (dh "")

4) Aktivieren Sie auf der Registerkarte „Fehlerwarnung“ die Option „Fehleränderung anzeigen, nachdem ungültige Daten eingegeben wurden“, wählen Sie „Stopp“ als Stil und geben Sie dann eine Fehlermeldung und eine Beschreibung ein (z. B. „Nicht überschreiben“).
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo,
Danke für den Austausch.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
VBA-Code - Toller Tipp, danke

Gibt es einen VBA-Code, um zu verhindern, dass bestimmte Zelleninhalte in Excel geändert UND gelöscht werden?
Das übliche Schutzblatt funktioniert bei mir nicht, da ich die Fähigkeit zum Sortieren von Daten verliere?

Vielen Dank im Voraus - Neil
Dieser Kommentar wurde vom Moderator auf der Website minimiert
"Verhindern, dass bestimmte Zelleninhalte gelöscht werden, indem das Arbeitsblatt geschützt wird" Ich habe es gemäß Ihrer Richtlinie getan, dennoch können Zelleninformationen gelöscht werden, dh der Schutz funktioniert nicht. Irgendeine Lösungsmöglichkeit.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Ahsan,
Hast du die VBA-Methode angewendet?
Sie müssen den VBA zum Codefenster des Arbeitsblatts hinzufügen. Angenommen, die Zelleninhalte, die Sie schützen möchten, befinden sich in Sheet9, klicken Sie bitte mit der rechten Maustaste auf die Blattregisterkarte und wählen Sie Code anzeigen aus dem Kontextmenü und kopieren Sie dann den Code direkt in das Codefenster, wie im folgenden Bild gezeigt.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, dieser Code funktioniert gut, aber durch das Löschen von Zeilen/Spalten wird er umgangen. Gibt es eine Problemumgehung dafür? Tschüss, David.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo David,
Welche Excel-Version verwendest du? Ich habe den Code ausprobiert, ganze Zeilen und Spalten im angegebenen Bereich können nach Anwendung des Codes nicht gelöscht werden.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Vielen Dank für die wertvollen Informationen.
Zu folgendem VBA:
Private Sub Worksheet_Change (ByVal-Ziel als Bereich)
Wenn Intersect(Target, Range("A1:E7")) nichts ist, dann Exit Sub
Bei Fehler GoTo ExitPoint
Application.EnableEvents = Falsch
Wenn nicht IsDate(Target(1)) Then
Anwendung.Rückgängig
MsgBox "Sie können Zellinhalte aus diesem Bereich nicht löschen" _
, vbCritical, "Kutools für Excel"
End If
Austrittspunkt:
Application.EnableEvents = Wahr
End Sub

Das Obige ermöglicht die Ausführung innerhalb eines bestimmten angegebenen Bereichs. Das Hinzufügen neuer Zeilen ist nicht möglich. Gibt es eine Möglichkeit, neue Zeilen hinzuzufügen und dennoch den gleichen Schutz beizubehalten?
Danke und Grüße
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Oussama Abou faraj,
Nachdem ich es mit verschiedenen Methoden versucht habe, kann ich das nicht zum Laufen bringen. Nach dem Hinzufügen einer neuen Zeile wird der Bereich sofort gesperrt und die neu eingefügte Zelle kann nicht bearbeitet werden.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ist es möglich, etwas Ähnliches auf Arbeitsmappenebene zu tun?

Private Sub Worksheet_Change (ByVal-Ziel als Bereich)
Wenn Intersect(Target, Range("A1:M7000")) nichts ist, dann Beende Sub
Bei Fehler GoTo ExitPoint
Application.EnableEvents = Falsch
Wenn nicht IsDate(Target(1)) Then
Anwendung.Rückgängig
MsgBox "Sie können Zellinhalte aus diesem Bereich nicht löschen" _
, vbCritical, "Kutools für Excel"
End If
Austrittspunkt:
Application.EnableEvents = Wahr
End Sub
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Gelu,
Wollen Sie verhindern, dass der Bereich "A1:M7000" in allen Arbeitsblättern der aktuellen Arbeitsmappe gelöscht wird?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Nein, ich wollte das Löschen NICHT zulassen (ohne die wks oder wkb zu schützen).

Es ist schön, dass das obige auf Wks-Ebene funktioniert.

Wenn es etwas gibt, damit es auf wkb-Ebene funktioniert, wäre es noch besser (ich habe viele Blätter)

G
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Das ist toll. Ich habe mich gefragt, ob dies eine Option ist, und das war es tatsächlich. Vielen Dank für die sehr einfache Anleitung.

André S.
Bewertet 5 aus 5
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