【发布时间】:2011-04-16 12:23:42
【问题描述】:
我有一个包含一个 ComboBox (YearToBeBuilt) 和两个文本框字段 (Cost 和 YearofExpenditureCost) 的表单。所有控件都链接到一个主表,一旦在表单上进行选择/输入,该表就会更新。
我在 VB 中编写了一个名为ReCalcIt()的过程,它在调用时执行以下过程:
Private Sub ReCalcIt()
If Me.YearToBeBuilt = "" Then
Me.YearofExpenditureCost = Me.Cost
Else
Me.YearofExpenditureCost = Me.Cost * (1 + 0.031) ^ (Me.YearToBeBuilt - 2010)
End If
End Sub
当我写这篇文章时我认为这会做以下事情:
如果 ComboBox [YearToBeBuilt] 为空白(例如 - 未进行选择),则
文本框[YearOfExpenditureCost] 将返回文本框[Cost] 的值。否则,将执行YearofExpenditureCost 的计算。
但这并没有按应有的方式工作
我做错了什么?我是 VBA n00b 所以也许我的语法不正确?
【问题讨论】:
-
您真的想在计算的最后部分使用指数吗?您意识到
Me.Cost * (1 + 0.031) ^ (Me.YearToBeBuilt - 2010)相当于 x^N,其中 N 是 YearToBeBuilt 和 2010 之间差异的结果,所以如果 N=3,它将是 Me.Cost * (1 + 0.031) 的三次方?跨度>
标签: ms-access forms ms-access-2007 vba