Это потребует VBA.
Нечто подобное будет работать, оно идет в модуле Sheet1
через редактор VBA *. Вы можете изменить имя листа и диапазоны по мере необходимости. -
Sub worksheet_change(ByVal target As Range)
If Not Intersect(target, Range("B2")) Is Nothing Then
Range("C2") = Range("C2").Value + target.Value
End If
End Sub
Однако это приведет к ошибке, если цель не числовая. Таким образом, вы должны обработать ошибки, как это -
Sub worksheet_change(ByVal target As Range)
If Not Intersect(target, Range("B2")) Is Nothing Then
If IsNumeric(target.Value) = False Then GoTo Error:
If IsNumeric(Range("C2").Value) = False Then GoTo Error:
Range("C2") = Range("C2").Value + target.Value
Exit Sub
Else: Exit Sub
End If
Error:
MsgBox ("Use a number!")
End Sub
* Чтобы попасть в редактор VBA, необходимо перейти к кнопке office, параметрам Excel и в популярном теге установить флажок рядом с Show Developer tab in the Ribbon
. Затем закройте его, перейдите на вкладку разработчика и нажмите кнопку Visual Basic
в крайнем левом углу. Откроется редактор, и вам нужно будет дважды щелкнуть модуль Sheet1
(или любой другой лист, на котором он находится) на левой панели.