Код VBA помещается в правильный лист в качестве частного подпункта. Изменения по расчетам выполняются, за исключением оператора clearcontents if. Чего мне не хватает?
Private Sub Worksheet_Calculate()
Static oldval
If Range("Q8").Value <> oldval Then
oldval = Range("Q8").Value
If Range("Q8").Value = 1 Then
Range("C8").Value = Range("Q8").Value
Range("D8").Value = Range("A3").Value
End If
If Range("Q8").Value = 0 Then
Range("D8").ClearContents
End If
End If
End Sub