Tutorial: Zellen basierend auf Farbe oder Format sperren/entsperren
Hier ist ein ausführliches Tutorial, wie du in Excel Zellen basierend auf ihrer Farbe oder anderen Formatierungen sperren oder entsperren kannst.
Da Excel keine integrierte Standardfunktion ("Klicken und Fertig") für das Sperren basierend auf Formaten hat, nutzen wir zwei Methoden: die manuelle Suche (für einmalige Aufgaben) und VBA-Makros (für Automatisierung).
In Excel sind standardmäßig alle Zellen als "Gesperrt" markiert. Diese Sperrung wird jedoch erst aktiv, wenn du den Blattschutz einschaltest. Um Zellen basierend auf ihrer Farbe zu steuern, müssen wir diese Eigenschaft gezielt ändern.
Methode 1: Manuelle Methode (ohne Programmierung)
Diese Methode eignet sich am besten, wenn du eine Tabelle einmalig nach Farben sortieren und schützen möchtest.
Schritt 1: Alle Zellen entsperren
- Markiere das gesamte Blatt (Strg + A).
- Drücke
Strg + 1(Zellen formatieren). - Gehe zum Reiter Schutz.
- Deaktiviere den Haken bei Gesperrt und klicke auf OK.
Schritt 2: Zellen nach Format auswählen
- Drücke
Strg + F(Suchen). - Klicke auf die Schaltfläche Optionen >>.
- Klicke neben dem Feld "Suchen nach" auf Format... -> Format von Zelle wählen.
- Klicke auf eine Zelle mit der Farbe/dem Format, das du sperren möchtest.
- Klicke auf Alle suchen.
- Drücke in der Ergebnisliste unten
Strg + A, um alle gefundenen Zellen gleichzeitig im Tabellenblatt zu markieren. - Schließe das Suchen-Fenster.
Schritt 3: Markierte Zellen sperren
- Die gewünschten Zellen sind nun markiert. Drücke erneut
Strg + 1. - Gehe zum Reiter Schutz und setze den Haken bei Gesperrt.
Schritt 4: Blattschutz aktivieren
- Gehe zum Reiter Überprüfen.
- Klicke auf Blatt schützen.
- Vergebe ein Passwort und klicke auf OK. Nun sind nur die farbigen Zellen gesperrt.
Methode 2: Automatisierung mit VBA (Makro)
Wenn du viele Zellen hast oder dies öfter tun musst, ist ein Makro effizienter.
Schritt 1: Den VBA-Editor öffnen
- Drücke
Alt + F11, um den VBA-Editor zu öffnen. - Gehe auf
Einfügen->Modul.
Schritt 2: Den Code kopieren
Kopiere den folgenden Code in das Modul:
Sub SperreNachFarbe()
Dim rZelle As Range
Dim ZielFarbe As Long
' Definition der Farbe (hier: Rot).
' Du kannst auch RGB(255, 0, 0) nutzen oder die Farbe einer Referenzzelle nehmen.
ZielFarbe = RGB(255, 0, 0) ' Ändere dies in deine gewünschte Farbe
' Blattschutz aufheben, um Änderungen vorzunehmen
ActiveSheet.Unprotect Password:="DeinPasswort"
' Erstmal alle Zellen entsperren (optional, je nach Bedarf)
Cells.Locked = False
' Jede Zelle im genutzten Bereich prüfen
For Each rZelle In ActiveSheet.UsedRange
If rZelle.Interior.Color = ZielFarbe Then
rZelle.Locked = True
End If
Next rZelle
' Blattschutz wieder aktivieren
ActiveSheet.Protect Password:="DeinPasswort"
MsgBox "Zellen mit der Zielfarbe wurden gesperrt!", vbInformation
End Sub
Schritt 3: Das Makro anpassen
- Farbe: Im Code oben wird
RGB(255, 0, 0)(Rot) verwendet. Wenn du die Farbe einer bestimmten Zelle (z.B. A1) als Referenz nehmen willst, schreibe:ZielFarbe = Range("A1").Interior.Color. - Andere Formate: Möchtest du z.B. alle fettgedruckten Zellen sperren? Ersetze die
If-Zeile durch:If rZelle.Font.Bold = True Then
Schritt 4: Makro ausführen
- Schließe den VBA-Editor.
- Drücke
Alt + F8. - Wähle
SperreNachFarbeund klicke auf Ausführen.
Wichtige Hinweise
- Reihenfolge einhalten: Das Sperren von Zellen hat KEINEN Effekt, solange das Blatt nicht geschützt ist (Überprüfen > Blatt schützen).
- Bedingte Formatierung: Achtung! Wenn Zellen ihre Farbe durch eine Bedingte Formatierung erhalten, erkennt VBA dies nicht mit
Interior.Color. In diesem Fall müsste im MakrorZelle.DisplayFormat.Interior.Colorverwendet werden (verfügbar ab Excel 2010). - Dateiformat: Wenn du ein Makro verwendest, musst du die Datei als Excel-Arbeitsmappe mit Makros (.xlsm) speichern.
Profi-Tipp: Welchen Farb-Code hat meine Zelle?
Um den genauen RGB-Code für dein Makro herauszufinden, klicke auf die Zelle, gehe zu Füllfarbe > Weitere Farben > Benutzerdefiniert. Dort siehst du die Werte für Rot, Grün und Blau.