Hallo @all,
ich möchte in einem Excel File Zellen vor Löschung, Beschreiben, Fornmatierung schützen. Schwierig hierbei: Ich habe in diesem File Gruppierungen eingefügt, welche über den „normalen“ Blattschutz nicht mehr bedienbar sind. Gibt es hierfür eine Lösung ?
Vielen Dank
Gruß
Bernd
ich möchte in einem Excel File Zellen vor Löschung,
Beschreiben, Fornmatierung schützen. Schwierig hierbei: Ich
habe in diesem File Gruppierungen eingefügt, welche über den
„normalen“ Blattschutz nicht mehr bedienbar sind. Gibt es
hierfür eine Lösung ?
Hi Bernd,
du willst also trotz Blattschutz noch gruppieren zulassen, verstehe ich dich da richtig?
Dann Alt+F11, Einfügen Modul, dort diesen Code einfügen:
Option Explicit
Public Merker As Range
Dann Doppeklick links auf "DieseArbeitsmappe, diesen Code einfügen:
Option Explicit
Private Sub Workbook\_Open()
On Error GoTo ende
Application.EnableEvents = False
Set Merker = Range("A1")
Worksheets(2).Activate
Worksheets(1).Activate
Worksheets(1).Range("A1").Select
ende:
Application.EnableEvents = True
End Sub
Danne Doppelklick links auf den Blattnamen, diesen Code einfügen:a
Option Explicit
Private Sub Worksheet\_Change(ByVal Target As Range)
On Error GoTo ende
Application.EnableEvents = False
Merker.Copy Target.Cells(1, 1)
MsgBox "nur Gruppierungen erlaubt"
ende:
Application.EnableEvents = True
End Sub
Private Sub Worksheet\_SelectionChange(ByVal Target As Range)
Application.EnableEvents = False
Merker = Target
Application.EnableEvents = True
End Sub
Editor schliessen, die Datei schliessen, öffnen.
Ist das so wie du woltest?
Gruß
Reinhard
hi Reinhard,
habe ich da was falsch verstanden ?
Option Explicit
Sub BlattSchutz_ohne_Gruppierung()
Tabelle1.Protect UserInterfaceOnly:=True
Tabelle1.EnableOutlining = True
End Sub
cu Micha
habe ich da was falsch verstanden ?
Option Explicit
Sub BlattSchutz_ohne_Gruppierung()
Tabelle1.Protect UserInterfaceOnly:=True
Tabelle1.EnableOutlining = True
End Sub
Hallo Micha,
nö wahrscheinlich ich
Naja liegt daran dass ich mich mit den verschiedenen DSchutzkombinationen noch nie richtig beschäfigt habe und auch noch nahezu nie Gruppierungen benutzte.
Mal schauen ob der Anfrager sich meldet.
Gruß
Reinhard
Hi Reinhard,
vielen Dank für Deine Mühe, aber entweder ich bin zu blöd, oder es klappt tatsächlich nicht.
Beim öffnen:
„Fehler beim kompilieren
Variable nicht definiert“
Markierung auf: „Diese Arbeitsmappe“ Merker =
Ich flasch oder scripTß
Vielen Dank
Bernd
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
„Fehler beim kompilieren
Variable nicht definiert“
Markierung auf: „Diese Arbeitsmappe“ Merker =
Hi Bernd,
dann steht im Modul nicht das was reingehört.
Markierung auf: „Diese Arbeitsmappe“ Merker =
Ich musste den Code sowieso variieren und durch den Tipp mit undo auch ohne Fehler.
Die Codes müssen genau in die angegeben Module eingestellt werden.
Alt + F11, (falls kein Modul1 existiert, Einfügen–Modul), Doppelklick auf Modul1, dann in Modul1 einfeügen
Option Explicit
Public Merker As Range
Doppelkick auf " DiesArbeitsmappe", dorthinein:
Option Explicit
Private Sub Workbook_Open()
On Error GoTo ende
Application.EnableEvents = False
Set Merker = Range(„A1“)
Worksheets(2).Activate
Worksheets(1).Activate
Worksheets(1).Range(„A1“).Select
ende:
Application.EnableEvents = True
End Sub
Doppelklick auf den Tabellenblattnamen, z.b. " Tabelle1", dorthinein:
Option Explicit
Private Sub Worksheet\_Change(ByVal Target As Range)
On Error GoTo ende
Application.EnableEvents = False
MsgBox "nur Gruppierungen erlaubt"
Application.Undo
ende:
Application.EnableEvents = True
End Sub
Private Sub Worksheet\_SelectionChange(ByVal Target As Range)
Application.EnableEvents = False
Set Merker = Target
Application.EnableEvents = True
End Sub
Gruß
Reinhard