我正在使用 Access 2003
我有一个表格,其中列出了几条付款记录,主要字段是已付款和银行所说的已付款,带有显示差异的文本框和一个复选框,以查看是否会处理该付款。
通常,用户必须手动查看差异字段,然后标记每个记录以进行处理,然后按“提交”。
我想自动化这个过程,所以通过按下一个按钮,所有差异 = 0 的记录都会被自动选择,所以用户只需要按下“提交”。
在我看来,您需要更新复选框后面的字段,而不是复选框本身。这是一个想法:
如果您正在寻找一个简单的解决方案,例如在表单上放置一个命令按钮并运行一个更新所有复选框的过程,您可以执行以下操作:
.
'Option Compare Database
'Option Explicit
'***Update a checkbox (yes\no field) depending on the value of a field***
'Table name:tblPayments
'Field name:difference
'Checkbox field name: toBeProcessed
Private Sub cmdUpdateRecords_Click()
Dim rstMyTable As DAO.Recordset 'Your table
Dim strSQL As String 'Your sql
'An SQL string based on the checkbox you want to update and the field you are assessing
strSQL = "UPDATE tblPayments SET tblPayments.toBeProcessed = IIf([difference]=0,True);"
'Execute the sql
CurrentDb.Execute strSQL
'Kill the object
If IsObject(rstMyTable) Then Set rstMyTable = Nothing
Me.Requery
End Sub