A partir do seu pedido original: Se A2 e A3 tiverem valores numéricos, A4 será preenchido com a soma. Se eles não forem numéricos ou nulos, o A4 mostrará um erro. Se A4 for sobrescrito, esse valor será permanente até que A2 ou A3 sejam alterados novamente. Para adicionar os novos requisitos: Se A2 e A3 produziram uma boa soma para A4 e alguém sobrescreve A4 com um novo valor numérico, então você deseja que o máximo seja tomado entre A2 + A3 e A4. Eu suponho que isso deve ser exibido na célula A5.
Adicionando à resposta original:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect(Target, Range("A2:A3")) Is Nothing Then
If WorksheetFunction.Count(Range("A2:A3")) = 2 Then
Range("A4").Formula = "=A2+A3"
End If
ElseIf Not (Intersect(Target, Range("A4"))) Is Nothing Then
'Check for numbers in a2, a3, and a4
If IsNumeric(Range("A2").Value) And IsNumeric(Range("A3").Value) And IsNumeric(Range("A4").Value) Then
'If a2+a3 is greater than a4
If Range("A2").Value + Range("A3").Value > Range("A4").Value Then
'set the sum of a2 and a3 to cell a5
Range("A5").Value = Range("A2").Value + Range("A3").Value
Else
'set the value of cell a4 to cell a5
Range("A5").Value = Range("A4").Value
End If
End If
End If
End Sub