试试以下代码
Sub Worksheet_Change(ByVal Target As Range)
If Target.Row > 1 And Target.Column > 4 And Target.Column < 7 Then
i = Target.Row
Cells(i, 7) = Cells(i - 1, 7) + Cells(i, 5) - Cells(i, 6)
End If
End Sub
Private Sub Workbook_Open()
Dim k As Long
k = Range("g" & i).Value
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim i, j, k As Integer
i = Target.Row
j = Target.Column
If i < 3 And i > 50 Then Exit Sub
If j <> 5 And j <> 6 Then Exit Sub
Range("g" & i).Value = k + Range("e" & i).Value - Range("f" & i).Value
End Sub