Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zellen löschen verhindern

Zellen löschen verhindern
02.05.2006 09:43:04
Benno
Hallo Forum
Ich habe eine Datei mit einer Tabelle und möchte verhindern, dass die User Zellen löschen können. Im Archiv habe ich dazu folgenden Code gefunden. Damit kann "Bearbeiten - Zellen löschen" ausgeschaltet werden. Über die rechte Maustaste ist die Aktion aber noch möglich. Weiss jemand weshalb?

Private Sub Workbook_Open()
'   [STRG]+[V] deaktivieren:
Application.OnKey "^v", ""
'   Menue Bearbeiten teilweise deaktivieren:
With Application.CommandBars("Worksheet Menu Bar").Controls("Bearbeiten")
.Controls("Einfügen").Enabled = False
End With
'   Menue Bearbeiten teilweise deaktivieren:
With Application.CommandBars("Worksheet Menu Bar").Controls("Bearbeiten")
.Controls("Zellen löschen...").Enabled = False
End With
'   Menue rechte Maustaste deaktivieren:
Application.CommandBars("Cell").Controls("Zellen löschen...").Enabled = False
Application.CommandBars("Cell").Controls("Zellen einfügen...").Enabled = False
End Sub

mfg
Benno
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen löschen verhindern
02.05.2006 09:56:55
Tassos
Hallo Benno,
Da ist die Fehler:
Falsch: Application.CommandBars("Cell").Controls("Zellen einfügen...").Enabled = False
Richtig: Application.CommandBars("Cell").Controls("Zellen &einfügen...").Enabled = False
Gruss
Tassos
AW: Zellen löschen verhindern
02.05.2006 10:56:03
Benno
Hallo Tassos
Dein Vorschlag hat keinen Einfluss. Auch mit dem & vorne dran kann ich mit der rechten Maustaste immer noch Zellen einfügen.
mfg
Benno
Anzeige
AW: Zellen löschen verhindern
02.05.2006 11:54:45
Tassos
Hallo
Teste mal IndexNr und Bezeichnung des Cell - CommandBars:

Sub test()
Dim i&
For i = 1 To Application.CommandBars("Cell").Controls.Count
Cells(i, 1).Value = Application.CommandBars("Cell").Controls(i).Caption
Cells(i, 2).Value = Application.CommandBars("Cell").Controls(i).Index
Next
End Sub

Gruss
Tassos
Anzeige
AW: Zellen löschen verhindern
02.05.2006 12:10:37
Benno
Hi
Also ich habe Deinen neuen Code genommen, in "DieseArbeitsmappe" kopiert und getestet, ob mit re Maustaste Zeile löschen noch möglich ist. War das korrekt?
Das Löschen ist immer noch möglich.
mfg
Benno
AW: Zellen löschen verhindern
02.05.2006 12:28:42
Tassos
Hallo
Nein, mit diesem Code werden die Namen der Controls in die aktive Tabelle
aufgelistet.
Somit kann man die letzte Zeile Deines Codes korrigieren
Gruss
Tassos
Anzeige
AW: Zellen löschen verhindern
02.05.2006 15:03:44
Benno
Hi
Ich habe eine alternative Lösung gefunden, die funktioniert:
Alles markieren und mit Zellen formatieren unter Schutz gesperrt deaktivieren. Danach das Blatt mit Extras Schutz schützen. Damit kann zwar in die Zellen eingegeben, aber sie können nicht gelöscht werden.
Danke für die Hilfe
mfg
Benno
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zellen löschen verhindern in Excel


Schritt-für-Schritt-Anleitung

Um zu verhindern, dass Benutzer in Excel Zellen löschen können, kannst du den folgenden VBA-Code verwenden. Dieser Code deaktiviert die Option „Zellen löschen“ im Menü und der rechten Maustaste:

  1. Öffne deine Excel-Datei.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Klicke mit der rechten Maustaste auf „DieseArbeitsmappe“ im Projektfenster.
  4. Wähle „Code anzeigen“.
  5. Füge den folgenden Code ein:
Private Sub Workbook_Open()
    '   [STRG]+[V] deaktivieren:
    Application.OnKey "^v", ""
    '   Menü Bearbeiten teilweise deaktivieren:
    With Application.CommandBars("Worksheet Menu Bar").Controls("Bearbeiten")
        .Controls("Zellen löschen...").Enabled = False
    End With
    '   Menü rechte Maustaste deaktivieren:
    Application.CommandBars("Cell").Controls("Zellen löschen...").Enabled = False
End Sub
  1. Schließe den VBA-Editor und speichere die Datei als Makro-fähige Arbeitsmappe (.xlsm).
  2. Schließe und öffne die Datei erneut, um den Code auszuführen.

Häufige Fehler und Lösungen

  • Problem: Zellen können immer noch über die rechte Maustaste gelöscht werden.
    • Lösung: Stelle sicher, dass der Code korrekt in „DieseArbeitsmappe“ eingefügt wurde. Überprüfe, ob der Code zum Deaktivieren der rechten Maustaste korrekt ist:
Application.CommandBars("Cell").Controls("Zellen löschen...").Enabled = False
  • Problem: Der Befehl „Zellen einfügen“ kann trotzdem verwendet werden.
    • Lösung: Ändere den Code für das Deaktivieren von „Zellen einfügen“ wie folgt:
Application.CommandBars("Cell").Controls("Zellen &einfügen...").Enabled = False

Alternative Methoden

Eine einfache Methode, um Zellen vor dem Löschen zu schützen, besteht darin, das gesamte Arbeitsblatt zu schützen:

  1. Markiere alle Zellen in dem Arbeitsblatt.
  2. Klicke mit der rechten Maustaste und wähle „Zellen formatieren“.
  3. Gehe zum Tab „Schutz“ und deaktiviere „Gesperrt“.
  4. Schütze das Blatt unter „Extras“ > „Blatt schützen“.
  5. Wähle die gewünschten Optionen aus, um die Eingabe in Zellen zu erlauben, während das Löschen verhindert wird.

Praktische Beispiele

Wenn du die Methode zur Deaktivierung des Löschens in einer Tabelle anwendest, kannst du sicherstellen, dass der Inhalt in den Zellen erhalten bleibt. Dies ist besonders nützlich in Formularen oder Datenbanken, in denen Benutzer versehentlich Zellen löschen könnten.

Zusätzlich kannst du auch bestimmte Zellen durch die Formatierung „Schutz“ sperren. Dies ermöglicht es den Benutzern, Daten einzugeben, aber sie können die Zellen nicht löschen.


Tipps für Profis

  • Nutze den VBA-Code in Kombination mit dem Schutz des Arbeitsblattes, um ein umfassendes System zum Schutz vor dem Löschen zu erstellen.
  • Teste deinen Code gründlich, um sicherzustellen, dass alle Funktionen wie gewünscht arbeiten.
  • Halte deine Excel-Version auf dem neuesten Stand, um sicherzustellen, dass alle VBA-Funktionen ordnungsgemäß funktionieren.

FAQ: Häufige Fragen

1. Kann ich Zellen in Excel so einstellen, dass sie nicht löschbar sind?
Ja, indem du das Arbeitsblatt schützt und die Zellen so formatierst, dass sie nicht gesperrt sind, kannst du verhindern, dass Zellen gelöscht werden.

2. Was kann ich tun, wenn die Zellen immer noch gelöscht werden können?
Überprüfe, ob der VBA-Code korrekt implementiert ist und ob das Arbeitsblatt tatsächlich geschützt ist.

3. Wie kann ich einen Zellenname löschen in Excel verhindern?
Das Löschen eines Zellennamens erfordert keinen speziellen Schutz, aber du kannst den Zugriff auf die Namensverwaltung durch VBA einschränken.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige