【发布时间】:2015-04-29 22:30:35
【问题描述】:
我有一个包含“DateProduced”字段的表单。绑定到它的表称为“报告”。
我尝试将更新后事件添加到此字段,并希望此事件更新 Quantity 表中的“DateProduced”字段(如果两者的 ID 匹配)。
Me![Text0] 显示报告字段中的 ID
Me![Text4] 显示 DateProduced from Report 字段。
事件代码如下。
Private Sub Text4_AfterUpdate()
Dim strSQL As String
strSQL = "UPDATE Quantity " _
& "SET [DateProduced] = (#" & Me![Text4] & "#) " _
& "WHERE ID = (" & Me![Text0] & ")"
DoCmd.RunSQL strSQL
End Sub
但我不能成功。
【问题讨论】:
-
这似乎与stackoverflow.com/questions/28747227/… 非常相似。此外,您没有包含任何错误消息或您的 MS Access 版本。
-
我使用的是 Access 2003,它没有给我任何错误消息,也没有更新表格
-
在这种情况下,尽管采取步骤,将 strSQL 打印到即时窗口,并在查询设计中对其进行测试。我怀疑问题出在这里:
& "WHERE ID = (" & Me![Text0] & ")",一方面,为什么是括号? -
另外,您很可能在日期
(#" & Me![Text4] & "#) "遇到语言环境问题。试试SET [DateProduced] = #" & Format(Me![Text4],"yyyy/mm/dd") & "# " -
它说“查询表达式中日期的运行时错误'3075'语法错误”