我有一个 Access 2010 数据库,它将从 Excel 工作表中导入数据并将该数据附加到正确的表中。我遇到的问题是,一旦导入,数据将不会附加客户 ID,因此表中的 cust_ID 字段将为空。我需要的是一个宏,它将询问用户每次导入的客户是谁,然后找到该客户的 ID 并将该值放入所有空字段中。我在这方面做了很多不同的尝试(主要是虽然宏构建器我什至不知道从哪里开始使用 VBA),但都没有显示任何结果。我认为我的最新版本很接近,但由于某种原因,它在导入后没有运行。我有一个“插入后”宏,这个想法是它会提示用户 [Customer Name] 从 TBL_Customers 中查找 custID,然后将其插入到每个空字段中。不幸的是,在我导入我的数据后,什么都没有发生,我真的不知道为什么。
Parameters Name: Customer Name
Look Up A Record In TBL_Customers
Where Condition =[TBL_Customers].[FLD_Customer_Name]=[Customer Name]
Alias custName
Look Up A Record In TBL_Customers
Where Condition =[TBL_Customers].[FLD_Customer_PK_ID]=[custName]
Alias custID
For Each Record In TBL_Contacts
Where condition =IsNull([FLD_Contact_FK_Customer_ID])
EditRecord
SetField
Name FLD_Contact_FK_Customer_ID
Value =[custID]
End EditRecord
我在想的另一种可能性是在 Excel 工作表中添加另一列,其中包含客户姓名,然后 Access 只需根据该列查找 cust_ID。我的问题是我不知道如何告诉 Access 从 Excel 工作表中导入客户名称,找到该客户的 ID 并将该 ID 插入到正确的表中,这就是我倾向于第一个选项的原因。
正如我在评论中所说,我尝试了很多不同的东西,但我对 VBA/Access 还很陌生,而且我已经没有想法可以尝试了。不确定哪个更容易/更好,因此非常感谢任何想法/建议/建议。