У меня есть ячейка («L2»), которая управляется с помощью функции if, чтобы определить «PASS», «ERROR» или «CHECK BOX» на основе ввода пользователем в других полях.Excel VBA: автоматически настраивает цвет вклада
Я хочу, чтобы цвет соответствующей вкладки менялся автоматически в зависимости от содержимого ячейки всякий раз, когда изменяется значение ячейки L2.
В настоящее время этот код выглядит так, но, к сожалению, он не работает. Не могли бы вы взглянуть и помочь мне? Большое спасибо за вашу помощь!
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False) = "L2" Then
Select Case Target.Value
Case "ERROR"
Me.Tab.ColorIndex = 3
Case "PASS"
Me.Tab.ColorIndex = 4
Case Else
Me.Tab.ColorIndex = xlColorIndexNone
End Select
End If
End Sub
EDIT:
я заметил кое-что интересное: как отображаемое значение ячейки «L2» управляется с помощью, если функция, которая содержится в ней, УВА не отображается для чтения отображаемое значение, а скорее оператор if из ячейки. Как я могу обойти это?
Благодарим за помощь.
Где происходит ошибка и какое сообщение вы получите? –
Ошибка не возникает, но изменения не происходит. – jcv
Ваш код в порядке, делая то, что вам нужно. Вы должны быть уверены, что вы проверите его на том же листе, на котором принадлежит ваш код (модуль листа в VBA/IDE). –