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

Löschen mit der Entf-Taste unterbinden

Forumthread: Löschen mit der Entf-Taste unterbinden

Löschen mit der Entf-Taste unterbinden
09.06.2025 09:52:46
NicoHendrik
Hallo alle zusammen,

ich möchte das es nicht möglich ist den Inhalt von einer Zelle oder mehrere Zellen von K9 bis LN24 mit der Entf-Taste zu löschen. Wenn dies versucht wird soll ein MsgBox Meldung kommen “Das löschen darf nur mit den Löschbutton vorgenommen werden“.

Gruß Nico
Anzeige

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 10:44:03
RPP63
Moin!
Ich würde so etwas ja mit einem Blattschutz regeln.
Der Löschbutton hebt den Schutz dann temporär auf.
Andere Variante:
Setzen des Blattschutzes im Workbook_Open()
(Tabelle1.Protect UserInterface:=True)
Dann darf VBA ändern, ohne den Schutz aufzuheben.

Egal:
Umleiten der Entf-Taste an das Makro Lass_Es mittels
Sub Start()

Application.OnKey "{del}", "Lass_Es"
End Sub

Private Sub Lass_Es()
MsgBox "Löschen nur mittels Löschbutton erlaubt!", vbInformation
End Sub


Das normale Verhalten der Entf-Taste setzt Du dann mittels
Sub Ende()

Application.OnKey "{del}"
End Sub


Gruß Ralf
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 14:12:58
xlKing
Hi, Nico,

hier ein Alternativvorschlag. Mit Application.OnKey war Ralf schon auf dem richtigen Weg. Den würde ich weitergehen.

Ins Modul "DieseArbeitsmappe"
Private Sub Workbook_Open()

Application.OnKey "{del}", "myDelete"
End Sub


In ein allgemeines Modul (z.B. Modul1)
Private Sub myDelete()

If TypeOf Selection Is Range Then
If Not Intersect(Selection, Range("K9:LN24")) Is Nothing And Selection.Parent.Name = "Tabelle1" Then
MsgBox "Das löschen darf nur mit den Löschbutton vorgenommen werden", vbExclamation
Else
Selection.ClearContents
End If
End If
End Sub


Beachte, dass in diesem Beispiel nur der Bereich auf Blatt "Tabelle1" überwacht wird. Benenne also Tabelle1 in deinen Sheetnamen um, oder lass den And-Teil weg, wenn du alle Blätter überwachen willst.

Gruß Mr. K.
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 17:04:04
Daniel
Hi

Mit diesem Code im Change-Event des Tabellenblatts:

If not Intersect(Target, Range("K9:LN24")) is nothing then

If Worksheetfunction.CountA(Target) =0 then
With Application
.EnableEvents = False
.Undo
.EnableEvents = True
End With
MsgBox "Zum Löschen bitte den Löschbutton verwenden."
End if
End if


Im Makro zum Löschen der Inhalte musst du dann ebenfalls die Events ausschalten, bevor du löschst. (Und einschalten nicht vergessen)

Gruß Daniel


Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 17:18:23
NicoHendrik
Danke Daniel, sieht schon mal sehr gut aus. Nachher wird ich das nochmal durchtesten.

Gruß Nico
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 18:13:59
NicoHendrik
Hallo Daniel,

als ich mehr als eine Zelle auf einmal mit Entf. löschen wollte Debbugt der code bei ".Undo" ansonnst scheint er gut zu funktionieren.

Gruß Nico
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 18:29:28
Daniel
Mit welcher Fehlermeldung?
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 18:49:28
NicoHendrik
Siehe Anhang
Userbild
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 19:33:49
Daniel
Ja das ist klar, das hattest du geschrieben.
Bevor das passiert, bekommst du aber eine Messagebox mit einem Text.
Was stand da drin?

Und wenn, lade bitte die Datei hoch, dann können wir uns direkt anschauen, woran es liegt.
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 21:40:51
Daniel
HI
UNDO funktioniert nur für vom Anwender ausgeführte Änderungen.
Sobald per VBA eine Änderung durchgeführt wird, wird der UNDO-Speicher gelöscht und es ist kein UNDO möglich.
Du machst hier aber vorher einiges, dh du musst dafür sorgen, dass die einzelnen Programmteile sauber voneinander getrennt sind.
So darf das löschen der Wochenenden nicht ausgeführt werden, wenn Inhalte gelöscht werden.
Schätze mal, dass es jetzt Zeit für dich wird, programmieren zu lernen und nicht nur Codes aus dem Internet zusammen zu stückeln.

Gruß Daniel
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 22:16:38
NicoHendrik
Ich bin 81 Jahre alt, und hab erst seit ca. 3/4 Jahr mit Excel zu tun. Meine Enkelin hat gefragt ob ich sie bei so einen Planer unterstützen kann. Ich versuche eben mein bestes zu geben.

Danke für die Belehrung.
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 22:25:32
Daniel
Dein Alter spielt da keine Rolle.
Wenn DU ihr helfen willst, dann solltest auch DU es tun und nicht wir, oder?
und letztendes helfen wir ja nicht dir, sondern deiner Enkelin, und wenn die so einen Planer erstellen will, sollte sie VBA können bzw zuminderst soweit lernen, dass die das tun kann oder jemanden damit beauftragen, der das macht.
wofür genau ist der Planer, wer soll damit arbeiten?
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 22:31:30
NicoHendrik
Das Thema ist für mich jetzt abgeschlossen.

Danke für eure Hilfe
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 14:35:03
xlKing
PS: Du solltest Ralfs ersten Vorschlag, das doch lieber über Blattschutz zu lösen, zumindest nochmal in Erwägung ziehen, da zwar das Löschen über Entf. nun unterbunden ist, man aber immer noch jederzeit die Werte überschreiben kann. Über OnKey müsste man somit für jede einzelne Eingabetaste ein eigenes Makro schreiben. Das kann nicht Sinn der Sache sein. Über Blattschutz ist definitiv die bessere Lösung.

Gruß Mr. K.
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 15:19:17
NicoHendrik
Das Blatt ist geschützt, nur der Bereich K9 bis LN28 nicht. Wenn auch dieser Bereich geschützt wird kann man nichts reinschreiben. Wenn ich was reinschreibe wird es mit einen Macro gespeichert. Jetzt darf es nur mit einen anderen Macro gelöscht werden und nicht mit Entf.

Gruß Nico
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 11:08:42
NicoHendrik
Hallo Ralf,

ich hab meine Frage wohl nicht ausführlich genug gestellt. Dies soll nur für den Bereich K9 bis NL24 gelten. In den andere Teile der Tabelle soll das löschen mit der Entf-Taste möglich sein.

Gruß Nico
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 12:37:43
RPP63
Ich bleibe ja bei meiner ursprünglichen Empfehlung mit dem Blattschutz.
Aber hier mal näherungsweise:
Private Sub Worksheet_Change(ByVal Target As Range)

Dim geschuetzterBereich As Range, Zelle As Range
Set geschuetzterBereich = Me.Range("K9:LN24")
If Not Intersect(Target, geschuetzterBereich) Is Nothing Then
For Each Zelle In Intersect(Target, geschuetzterBereich)
If Zelle.Text = "" Then
Application.EnableEvents = False
MsgBox "Das Löschen darf nur mit dem Löschbutton vorgenommen werden.", vbExclamation, "Eingeschränkte Aktion"
Application.Undo
Application.EnableEvents = True
End If
Next
End If
End Sub
Anzeige
AW: Löschen mit der Entf-Taste unterbinden
09.06.2025 13:40:43
NicoHendrik
Leider klappt es nicht. Die MsgBox kommt auch wenn ich in einen Bereich was reinschreibe.

Gruß Nico
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18