2013-07-23 114 views
0

我正在尝试更新另一个表上的记录。所以我有我的第一张表InfoDetailsTable,它有一堆记录,其中一个值为KitNumber。在这个InfoDetailsTable表中我更新了一些复选框,当它们改变时它应该更新我的表的Reason值,InfoTable。我只是不太清楚如何处理我的UPDATE语句,以便根据我在InfoDetailsTable中更改的记录更新我的特定InfoTable记录。下面是代码:更新对应于同一记录的另一个表上的记录

CurrentDb.Execute " UPDATE InfoTable SET Reason = 'blah' WHERE KitNumber = " & InfoDetailsTable.KitNumber 

所以InfoTableReasonKitNumber同时InfoDetails也有KitNumber,因为他们是在一个关系,其中上InfoTableKitNumber是主键。如果任何人都可以提供帮助,那会很棒。谢谢

编辑:这里有一些更多的代码可能有帮助。

If USBCheck = True And ThreewayCheck = True And Car1Check = True And Car2Check = True Then 
CurrentDb.Execute " UPDATE InfoTable SET Reason = '' WHERE KitNumber = " & InfoDetailsTable.KitNumber 
ElseIf USBCheck = False Or ThreewayCheck = False Or Car1Check = False Or Car2Check = False Then 
CurrentDb.Execute " UPDATE InfoTable SET Reason = 'blah' WHERE KitNumber = " & InfoDetailsTable.KitNumber 
End If 

Forms!Search!Info.Form.Requery 

如果我编辑喜欢CurrentDb.Execute " UPDATE InfoTable SET Reason = 'blah' "的代码,然后我得到的一切,以优良工作了,只是在现在更新到每一条记录,在这里我只希望在我InfoDetailsTable

+1

你在哪里试图运行这段代码?你是否正在尝试从表单更新记录时更新它? – ObieMD5

+0

@ ObieMD5我有一个表单上有3个子表单。此代码位于子窗体中,正在尝试更新另一个子窗体。我单击此表单上的复选框,并希望它在发生这种情况时更新另一个子表单 – Patrick

+0

@patrick如果您的子表单复选框没有绑定并且仅用于构建您的更新语句(这是您构建更新查询后的样子),您需要向我们提供更多信息 – Scotch

回答

1

用此方法获得的字段:

CurrentDb.Execute " UPDATE InfoTable SET Reason = 'blah' WHERE KitNumber = " & Me.KitNumber 

当你从目前的形式代码的工作,你需要我引用它。如果它不起作用仍然提供你的链接,我会看看它。

+0

是的!谢谢。我不知道为什么我认为我需要它是'InfoDetailsTable.KitNumber'。非常感谢。我保证我通常不会那么慢。我非常感谢你的帮助。 – Patrick

0
更新记录“嗒嗒”

如果KitNumber是InfoTable(主键)的标识字段,那么您将拥有的工作。

+0

它给我错误说“对象需要”,然后突出显示我上面提交的代码。 – Patrick

相关问题