Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Geschützte Zellen trotzdem bearbeiten

Forumthread: Geschützte Zellen trotzdem bearbeiten

Geschützte Zellen trotzdem bearbeiten
04.06.2019 08:12:30
MiaLeMe
Hallo zusammen,
Ich würde gerne in einer Tabelle, die von mehreren Benutzern genutzt wird bestimmte Zellen gegen eine Umformatierung schützen.
Sofern ich weiß geht das nur mit dem gesamten Blatt - ist aber auch okay.
Wenn ich jetzt jedoch das ganze Blatt gegen das Formatieren schütze funktionieren natürlich Makros die, die Zellen automatisch ein und ausblenden und befüllen nicht mehr... musste ich feststellen.
Kennt ihr da eine Lösung für?
Danke euch im Voraus!
LG
Mia Le Mee
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Geschützte Zellen trotzdem bearbeiten
04.06.2019 08:24:32
Werner
Hallo,
dann einfach vor dem Ein-/Ausblenden den Blattschutz per Makro aufheben und danach wieder setzen.
Oder schau mal im Foren-Archiv nach UserInterfaceOnly
Gruß Werner
AW: Geschützte Zellen trotzdem bearbeiten
04.06.2019 09:15:17
Luschi
Hallo MiaLeMe,
ich mach das per Vba so:
- beim Öffnen der Arbeitmappe alle Tabellenblätter durchlaufen
- bei jedem Blatt per Protect-Befehl den Blatschutz aktivieren
- aber mit dem Parameter UserInterfaceOnly:=True (siehe Vba-Hilfe)
- jetzt können Vba-Makros Zellen verändern, der Anwender aber nicht
Da die Arbeitsmappe beim Schließen diesen Parameter wieder vergißt, muß dies bei jeden erneuten Öffnen wiederholt werden.
Gruß von Luschi
aus klein-Paris
aus klein-Paris
Anzeige
AW: Geschützte Zellen trotzdem bearbeiten
07.06.2019 09:20:02
MiaLeMe
Hallo,
könntet Ihr mir da mal ein Beispiel als Code geben, wie das geht?
Mache ich das als separaten Sub? Wie sage ich dem Sub, dass er bei öffnen ausgeführt wird?
LG
Mia le Mee
AW: Geschützte Zellen trotzdem bearbeiten
10.06.2019 09:19:23
Oberschlumpf
Hi MiaLeMe,
ich hab mal eine Bsp-Datei mit Luschis Vorschlag erstellt:
https://www.herber.de/bbs/user/130313.xlsm
Versuch mal in den 3 Tabellenblättern irgend etwas zu verändern (trag Text in eine Zelle ein, oder Zahlen, versuche Text/Hintergrundfarbe zu ändern, oder oder oder)
Du wirst feststellen, dass du nix ändern kannst, erhältst immer die Meldung, dass das Blatt geschützt ist.
Klick nun in den einzelnen Blättern auf den Button.
In Tabelle 1 lässt sich die Hintergrundfarbe in A1 ändern.
In Tabelle 2 wird in C4 Text eingefügt/entfernt.
In Tabelle 3 ändert sich in B10 die Schriftgröße.
All das ist möglich, weil im WorkbookOpen-Ereignis (dieser Code wird bei jedem Start der Datei ausgeführt; vorausgesetzt, die Makroausführung ist aktiviert) immer für alle Tabellen der Blattschutz aktiviert wird.
Aber...
...der Blattschutz bezieht sich NUR auf manuelle Eingaben des Benutzers!
Mit Hilfe von VBA-Code kannst du weiterhin jede Änderung vornehmen, die du willst, ohne, dass der Blattschutz deaktiviert werden muss.
Hilfts?
Ciao
Thorsten
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Geschützte Zellen in Excel bearbeiten: So geht's


Schritt-für-Schritt-Anleitung

  1. Blattschutz aktivieren: Um die Zellen zu schützen, aktiviere den Blattschutz für dein Arbeitsblatt. Das kannst du über die Excel-Oberfläche tun oder per VBA mit folgendem Befehl:

    ActiveSheet.Protect
  2. UserInterfaceOnly verwenden: Um zu gewährleisten, dass Makros weiterhin auf geschützte Zellen zugreifen können, benutze den Parameter UserInterfaceOnly in deinem VBA-Code. Hier ein Beispiel:

    Private Sub Workbook_Open()
       Dim ws As Worksheet
       For Each ws In ThisWorkbook.Worksheets
           ws.Protect UserInterfaceOnly:=True
       Next ws
    End Sub
  3. Code im Workbook_Open-Ereignis platzieren: Dieser Code sollte im ThisWorkbook-Modul platziert werden, damit er bei jedem Öffnen der Arbeitsmappe ausgeführt wird.

  4. Makros erstellen: Erstelle deine Makros, die auf die geschützten Zellen zugreifen, ohne den Blattschutz aufheben zu müssen.


Häufige Fehler und Lösungen

  • Fehler: Blattschutz wird nicht aktiviert
    Lösung: Stelle sicher, dass der Code im Workbook_Open-Ereignis korrekt platziert ist.

  • Fehler: Makros können nicht auf geschützte Zellen zugreifen
    Lösung: Überprüfe, ob du den Parameter UserInterfaceOnly korrekt verwendet hast.


Alternative Methoden

Eine alternative Methode, um geschützte Zellen zu bearbeiten, ist die Verwendung von Formeln oder Datenvalidierung. So kannst du sicherstellen, dass bestimmte Werte in geschützten Zellen eingegeben werden können, ohne dass der Benutzer die Zelle manuell ändern muss.


Praktische Beispiele

  1. Beispiel für das Einfügen eines Makros: Angenommen, du möchtest die Hintergrundfarbe einer Zelle ändern, ohne den Blattschutz aufzuheben. Du kannst ein Makro wie folgt erstellen:

    Sub ÄndereHintergrundfarbe()
       Worksheets("Tabelle1").Range("A1").Interior.Color = RGB(255, 0, 0)
    End Sub
  2. Beispiel für das Hinzufügen von Text: Um Text in eine geschützte Zelle einzufügen, kannst du folgendes Makro verwenden:

    Sub TextEinfügen()
       Worksheets("Tabelle2").Range("C4").Value = "Neuer Text"
    End Sub

Tipps für Profis

  • Automatisierung maximieren: Nutze die Möglichkeit, UserInterfaceOnly in Kombination mit der Excel-Eventprogrammierung zu verwenden, um den Blattschutz bei jedem Öffnen der Datei automatisch zu aktivieren.

  • Eingaben validieren: Verwende Datenvalidierung, um sicherzustellen, dass nur bestimmte Werte in geschützten Zellen eingegeben werden können.


FAQ: Häufige Fragen

1. Kann ich den Blattschutz manuell aufheben?
Ja, du kannst den Blattschutz jederzeit manuell aufheben, indem du auf "Blattschutz aufheben" in der Registerkarte "Überprüfen" klickst.

2. Was passiert mit dem Blattschutz, wenn ich die Datei schließe?
Der Blattschutz bleibt aktiv, aber der Parameter UserInterfaceOnly wird beim Schließen der Datei zurückgesetzt. Daher musst du ihn beim nächsten Öffnen erneut setzen.

3. Funktioniert dieser Ansatz in allen Excel-Versionen?
Ja, dieser Ansatz funktioniert in Excel 2007 und neueren Versionen, die VBA unterstützen.

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