The ambiguous name error is caused bevause you have two procedures with the same name, the SelectionChange event might already be in use.
Use this, it will run whenever G12 is changed
![]()
[Private Sub Worksheet_Change(ByVal Target As Range) Const PW As String = "secret" If Target.Address = "$G$12" Then Select Case Cells(7, 8).Value Case "Grass Fire", "Timber Fire" ActiveSheet.Unprotect PW Target.Locked = False ActiveSheet.Protect PW End Select End If End Sub]
Bookmarks