Mit Microsoft Excel können Sie bedingte Formatierung auf Zellen anwenden. Wenn der Wert in einer Zelle bestimmten Regeln entspricht, die Sie festgelegt haben, ändert die Funktion für bedingte Formatierung die Farbe des Texts in der Zelle oder die Füllfarbe oder beides. Dies ist eine grundlegende Funktion, die sofort einsatzbereit ist. Wenn Sie jedoch Zellen basierend auf Farbe sperren möchten, benötigen Sie dazu 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 ist nicht von der bedingten Formatierung abhängig, um Zellen zu sperren. Es muss nur eine Zelle gefärbt 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 referenziert 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 mit einer anderen Farbe gehen, Verwenden Sie diese Website um herauszufinden, welchen Farbcode Sie verwenden müssen. Der Farbcode, den wir für Gelb verwenden, ist #FFFF00.
Aktivieren Sie in Excel die Registerkarte „Entwickler“ und wechseln Sie dann dorthin. Klicken Sie auf die Visual Basic-Schaltfläche und fügen Sie Folgendes in „Dieses Arbeitsblatt“ ein. Dieses Skript wurde von 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 sperrt alle Zellen mit der von Ihnen festgelegten Farbe. Der Farbcode, den Sie für Ihre Farbe gefunden haben, wird in dieser Zeile im Skript festgelegt.
colorIndex = FFFF00
Das FFFF00 stellt die gelbe Farbe dar und das 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, mit einer Grundfarbe zu gehen. 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 andere Personen daran hindert, den Wert einer Zelle zu ändern, wenn sie dies möchten. Es ist eine gewöhnliche Sperre, die versehentliche Änderungen in der Datei verhindert.