这其实是很简单的事,但最终的结果是从“正常化”,因此我强烈建议你把所有的数据在一个表中,有一个“PartNum”字段或东西,所以它可以是很远必要时进行过滤。
但是,为了回答你的问题......你可以做到这一点的方法就是使用unbound form。如果您没有将特定的表格作为表单的源数据关联,则它被视为未绑定。相比之下,如果您将表单绑定到特定的表格,然后将这些字段绑定到控件,只要您在表单中输入数据,它会立即写入表格。使用未绑定的表单可以完全控制写入的数据和写入的表。
因此,在使用未绑定的形式,你可以简单地把表单上的“保存”按钮,并把VBA在这个按钮的onclick事件。在按钮的OnClick事件中,您可以检查PartNum字段,并根据该值写入相应的表格。
例如:
Public Sub btnSave_OnClick()
dim db as Database
dim rec as Recordset
Set db = CurrentDb
'Find out which table to write to
if Me.PartNum.Text = "A" then
MyTable = "PartNumA"
elseif Me.PartNum.Text = "B" then
MyTable = "PartNumB"
else (etc...)
end if
Set rec = db.OpenRecordset("Select * from " & MyTable & "")
rec.AddNew
rec("PartNum") = Me.PartNum.Text
rec("Date") = Me.Date.Text
rec("Temperature") = Me.Temperature.Text
etc...
rec.Update
rec.Close
db.Close
End Sub
以上完全是 “aircode”;完全未经测试和假设,但可能非常接近你实际写的内容。
我想真正的问题是为什么有多个零件表? –
现在我想,我想我可以只有一个表格,而且我总是可以过滤或导出它,以便通过零件号查看它。当我输入结果时,我真正想要的是通过或失败,因此每个零件号码都有不同的限制。 –
那么你需要问SQL相关的问题,因为这种类型的数据过滤是什么SQL是好的 –