我正在使用表单在表格中输入新数据:tblMonthlySummary
。我正在输入帐号,货币和结算本地余额。
当我在表tblMonthlySummary
中输入帐号时,我希望通过宏或VBA来访问表tblStaticBankDetails
以获取将添加到{{1}的帐号}}。
如果tblMonthlySummary
中不存在帐号,我希望VBA或宏返回一个显示“tblStaticBankDetails
”的Windows对话框。
以下是我在VBA中为“添加表项按钮,清除字段”和“关闭表单”添加的当前代码。这些按钮位于标有Invalid account number
的表单上。
frmMonthlyManualUpdate
Private Sub cmdAdd_Click()
'add data to table
CurrentDb.Execute "INSERT INTO tblMonthlySummary([Account Number], [Currency], [Closing Balance]) " & _
" VALUES('" & Me.txtAccountNumber & "','" & Me.cboGender2 & "', '" & Me.txtClosingBalance & "')"
'clear form
cmdClear_Click
'refresh data in list on form
frmMonthlySummarySub.Form.Requery
'confirmation of end
MsgBox "Account number and balance successfully recorded."
End Sub
是我的货币空白。
Me.cbogender2
Private Sub cmdClear_Click()
Me.txtAccountNumber = ""
Me.cboGender2 = ""
Me.txtClosingBalance = ""
'focus on TxtAccountNumber
Me.txtAccountNumber.SetFocus
End Sub
答案 0 :(得分:1)
使用组合框是可行的方法。
您可以将其属性设置为仅允许将列表中的值输入到字段中。用户可以从列表中选择一个值,也可以手动键入帐户。它不会让输入的值不在列表中。
有多少帐户可能会丢失其摘要行?
如果只是一小部分,您可能需要考虑:
使用SQL插入tblStaticBankDetails中不在tblMonthlySummary中的帐号。
然后,用户可以看到哪些缺失,并找出值应该是什么。 (即过滤以形成查看缺少详细信息的帐户)
您正在使用按钮执行并插入语句,这很奇怪。更常见的是,Access表单基于可更新的记录源(如您的列表),并且用户只需单击“新记录”按钮即可插入行。
PS。我希望在这两个表之间设置参照完整性,以阻止为帐号输入任何不正确的值。
哈维