【问题标题】:Access TransferSpreadsheet Excel - Prevent Duplicates?访问 TransferSpreadsheet Excel - 防止重复?
【发布时间】:2015-09-26 23:12:37
【问题描述】:

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

有什么想法吗?

谢谢!

【问题讨论】:

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


    【解决方案1】:

    这样的事情应该可以工作。如果您列出更多项目的详细信息,我可以对其进行更多定制。

    从功能区上的“外部数据”链接到 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));
    

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

    【讨论】:

    • 我不确定我的帖子是否能很好地解释我的意图。这是一个应用程序。我需要自动化这个。我知道如何将插入从表写入表。我想使用 transferspreadsheet 命令从电子表格中无缝完成。我有一个答案,我将单独发布。
    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多