在MS Access 2010中工作,期望接收我需要导入人事数据库的10,000种Excel格式更改。我的任务是“自动化”更新过程,但可以真正使用一些帮助。
主表有12个字段,每个字段可以针对提交的每个更改表单进行更改。我们设计了一个宏来上传Excel文件,但更改表单上的某些字段将为空白,导致员工记录不完整(例如,原始员工记录中填写了所有12条记录,但更改记录只有1条)。
是否可以使用先前条目中的非NULL值编写查询或宏来填充最新员工记录的空值或NULL值?
答案 0 :(得分:0)
如果我理解正确,如果'change'表中的值为null,则希望保留'primary'表中的值。在这种情况下,以下内容应该有效
UPDATE <primaryTable> INNER JOIN <changeTable> ON <primaryTable>.<keyField> = <changeTable>.<keyField> SET <primaryTable>.<Field1> = nz(<changeTable>.<Field1>,<primaryTable>.<Field1>), <repeat for each field to update>
请确保您正在处理空值而不是空字符串,这在Excel导入中很常见。在这种情况下,您需要将空字符串更改为空值或使用IIF语句而不是nz函数。