Access TransferSpreadsheet Excel - 防止重复?

时间:2015-07-08 20:18:57

标签: excel ms-access duplicates import-from-excel

我正在开发一个希望尽可能自动化数据输入的应用程序。希望为这些输入表单添加一个按钮,用于选择要导入的excel文件。我已经为一个界面做了这个,现在我正在研究其他界面。我正在寻找防止重复导入表格的最佳方法。对于我现在正在处理的那个,它是一个简单的2列导入。我之前使用过的一种方法是将电子表格导入临时表。然后我可以利用查询插入<> 。我只是想知道这是否是最好的使用方法。

有什么想法吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

这样的事情应该有效。如果列出项目的更多细节,我可以更多地定制它。

来自"外部数据"在功能区上,链接到excel文件。

然后编写以下查询:

INSERT INTO table1
( 
field1, 
field2
)
SELECT 
a.field1, 
a.field2
FROM tableExcel AS a 
LEFT JOIN table1 AS b ON a.field1 = b.field1
WHERE (((a.field1) Is Null));

然后只需将宏附加到运行上述查询的按钮上。

答案 1 :(得分:0)

我最终找到了最有效的解决方案。我可以将从电子表格导入的2个字段的索引放入表中。然后在发出transferspreadsheet命令之前,我会将warnings设置为false,并在完成后将它们设置为true。这样,用户就不会因索引完成拒绝重复操作而获得错误。

有人发现该解决方案有任何问题吗?唯一可怕的是,如果我导入临时表,我可以首先获得项目数并在插入后验证计数,因此我可以在此过程中向用户报告一些信息。除此之外,这意味着我不需要临时表,我可以直接进入目标表而无需担心导入欺骗。