在Excel中计算同一单元格中的数据

时间:2013-08-22 00:15:27

标签: excel vba excel-vba excel-formula

我不知道该怎么做;我希望有人可以帮助我。

我希望单元格在输入数字后自动更新数学方程式。

我想这样做是因为我每笔交易的费用为10美分,加上2%的信用卡费用。

所以,例如,  交易(D15)= 21金额(E15)= 108

我希望结果单元格用事务和数量单元格更新。

在这种情况下,我会使用以下公式:

(D15 * 0.10) - (E15-2%)= 103.78。

因此E15将自动更新为103.78。

我目前需要复制和粘贴,我希望它能够自动更新。

任何?这会很棒。非常感谢。我不确定这是否需要宏或者我是否可以将其作为单元格函数插入。

1 个答案:

答案 0 :(得分:1)

好吧,您需要在工作表中添加宏( 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这会停用事件,以便不会再次计算公式...

每次更改当前工作表中任何单元格的值时,Excel都会调用Worksheet_Change