如何停止访问2016以停止擦除以前保存的记录中的数据?
任何改进/建议都将不胜感激!
(这是我有限的知识所能做的最好的事情)
有以下字段:Text7,ID,UPK,CheckTime。 要保存回表的数据只是每个扫描项目的检查时间字段。
表格:
-ID自动编号| -UPK号| -CheckTime日期/时间| -Text7(是唯一的未绑定控件)
我需要能够做到这一点:
**编辑谢谢@ Jiggles32 **
注意:对于我的知识水平而言,废弃了过于繁琐的VBA代码,尝试了@Minty的建议并进行了查询
答案 0 :(得分:0)
我想我现在看得更清楚了。看起来您希望保存发生在新记录上,而不是已经存在的记录上。
这是导致该问题的原因:
SELECT *
FROM ALL_VIEWS
WHERE UPPER(TEXT_VC) LIKE '%FOO%';
基本上,这部分代码是查找记录的第一个实例,该记录包含rs.FindFirst "[UPK]=" & Text7
If rs.NoMatch Then
MsgBox "Sorry, no such record '" & Text7 & "' was found.", _
vbOKOnly + vbInformation
Else
Me.Recordset.Bookmark = rs.Bookmark
End If
rs.Close
中的UPK
值,并将该记录设置为表单上的当前Recordset.Bookmark信息。因此,如果表中已经存在具有相同Text7
的值,它将覆盖该值。
我敢肯定您可以通过以下方式实现您想要的结果:
UPK
您仍然需要在Dim ctrl As Control
...
'Update CheckTime to current time (for current UPK), save, and close
rs.AddNew
rs!UPK = Me.Text7
rs!CheckTime = Now()
rs.Update
rs.Close
Set rs = Nothing
'Clear all text boxes
For Each ctrl In Me.Controls
If (ctrl.ControlType = acTextBox) Then
ctrl.Value = Null
End If
Next ctrl
'Reset focus on Text7
Me.Text7.SetFocus
部分中设置记录集等。