Worksheet_Change
триггеры, когда значение ячейки изменяется (это то, что я хочу), но оно также запускается, когда вы вводите ячейку, как если бы ее редактировать, но на самом деле не изменяете значение ячейки (и это то, что я не хотят этого делать).
Скажем, я хочу добавить штриховку в ячейки, значение которых было изменено. Поэтому я кодирую это:
Private Sub Worksheet_Change(ByVal Target As Range)
Target.Interior.ColorIndex = 36
End Sub
Теперь, чтобы проверить мою работу: измените ячейку A1 и ячейка подсвечивается. Это желаемое поведение. Все идет нормально. Затем дважды щелкните B1, но не изменяйте значение там, а затем нажмите C1. Вы заметите, что B1 подсвечивается! И это не желаемое поведение.
Нужно ли мне переходить к рассмотренным здесь методам сбора старого значения, а затем сравнивать старые с новыми, прежде чем выделять ячейку? Я, конечно, надеюсь, что там что-то мне не хватает.