好吧,您需要将宏添加到您的工作表(Alt+F11 并在 Microsoft Excel 对象中双击您的工作表名称),然后这样的事情将解决您的问题:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = [E15] Then 'enters when cell E15 is modified
Dim transactions
transactions = [D15]
Dim amount
amount = [E15]
Application.EnableEvents = False 'very important!
Target.Value = amount - transactions * 0.1 - amount * (0.02)
Application.EnableEvents = True
Application.ScreenUpdating = False
[E15].Activate 'select the same cell again
Application.ScreenUpdating = True
End If
End Sub
小心Application.EnableEvents=False
这会停用事件,这样公式就不会一次又一次地计算......
Worksheet_Change
每次更改当前工作表中任何单元格的值时,Excel 都会调用。