此代码仅用于计算总数,然后计算该总数的百分比,然后在文本框中显示百分比金额。此代码在单击表单上的按钮时运行,但它使用基于该表单上的子表单中的数据,并且它应该显示到的文本框位于表单上。表单和子表单都在类列表中调用,所以我很困惑为什么会出现“需要对象”错误。
Private Sub cmdTest_Click()
'Initialisation
Dim TotalAmount As Integer
Dim GiftAid As Integer
'Processing
If AllForms!frmGiftAid!subfrmqryGiftAid!PaymentIncrement Is Not Null Then
If AllForms!frmGiftAid!subfrmqryGiftAid!PaymentIncrement = "Monthly" Then
TotalAmount = _
(AllForms!frmGiftAid!subfrmqryGiftAid!PaymentAmountPerIncrement * 12)
Else
TotalAmount = _
AllForms!frmGiftAid!subfrmqryGiftAid!PaymentAmountPerIncrement
End If
End If
'Termination
GiftAid = (TotalAmount * 0.25)
AllForms!frmGiftAid!subfrmqryGiftAid!subfrmqryGiftAidtxtGiftAid = GiftAid
End Sub
发生错误的行是第一个引用子表单的行,所以它是:
如果 AllForms!frmGiftAid!subfrmqryGiftAid!PaymentIncrement 不为空,则
我尝试使用代码的不同变体来引用子表单(仅引用子表单,使用“Forms”而不是“AllForms”)以及在子表单本身而不是表单中尝试它并在不同的事件中这样做,例如 On_Current() 或 On_Load(),但到目前为止对我没有任何帮助。
您能为我提供的任何帮助将不胜感激。