Mit Microsoft Excel können Sie bedingte Formatierungen auf Zellen anwenden. Wenn der Wert in einer Zelle bestimmte von Ihnen festgelegte Regeln erfüllt, ändert die Funktion zur bedingten Formatierung die Farbe des Texts in der Zelle oder die Füllfarbe oder beides. Dies ist eine grundlegende Funktion, die sofort funktioniert. Wenn Sie jedoch Zellen basierend auf der Farbe sperren möchten, benötigen Sie dafür ein kleines VBA-Skript.

Sie können die bedingte Formatierung verwenden, um die Farbe einer Zelle zu ändern, oder Sie können die Farbe manuell beliebig ändern. Das VBS-Skript hängt nicht von der bedingten Formatierung ab, um Zellen zu sperren. Es braucht nur eine Zelle, um gefärbt zu werden.

Zellen basierend auf Farbe sperren

Bevor Sie ein VBA-Skript erstellen können, müssen Sie die Farbe der Zelle kennen, auf die Sie verweisen. VBA sieht Farben nicht so, wie sie sind; es verweist auf sie über ihre Farbcodes.

Das erste, was Sie tun müssen, ist, Ihrer Zelle eine Farbe zu geben. Wir haben uns für das grundlegende Gelb entschieden, das leicht zu referenzieren ist. Wenn Sie eine andere Farbe wählen, nutze diese Webseite um herauszufinden, welchen Farbcode Sie verwenden müssen. Der Farbcode, den wir für Gelb verwenden, ist #FFFF00.

Aktivieren Sie in Excel die Registerkarte Entwicklertools, und wechseln Sie dann zu ihr. Klicken Sie auf die Schaltfläche Visual Basic und fügen Sie Folgendes in „Dieses Arbeitsblatt“ ein. Dieses Skript wurde vom Superuser-Benutzer Dave geschrieben.

Sub WalkThePlank()

dim colorIndex as Integer
colorIndex = FFFF00

Dim rng As Range

For Each rng In ActiveSheet.UsedRange.Cells

Dim color As Long
color = rng.Interior.ColorIndex
If (color = colorIndex) Then 
rng.Locked = True
else
rng.Locked = false 
End If

Next rng

End Sub

Führen Sie das Skript aus, und es werden alle Zellen gesperrt, die die von Ihnen festgelegte Farbe haben. Der gefundene Farbcode für Ihre Farbe wird in dieser Zeile im Skript gesetzt;

colorIndex = FFFF00

Der FFFF00 stellt die gelbe Farbe dar, und diese müssen Sie durch den Farbcode ersetzen, der für die von Ihnen verwendete Farbe gilt. Wir sollten erwähnen, dass es am besten ist, eine Grundfarbe zu wählen. Sobald Sie dies hinzugefügt haben, müssen Sie Ihre Excel-Datei als makrofähige Datei speichern, oder das VBA-Skript wird nicht gespeichert.

Die gesperrten Zellen können leicht entsperrt werden. Die Sperre ist keine passwortgeschützte Sperre, die verhindert, dass andere Personen den Wert einer Zelle ändern, wenn sie möchten. Es ist eine gewöhnliche Sperre, die versehentliche Änderungen in der Datei verhindert.