【问题标题】:access import csv to various tables based upon file name根据文件名访问导入 csv 到各种表
【发布时间】:2014-10-18 16:44:48
【问题描述】:

我一直在 stackoverflow 中搜索各种网站和链接,但没有找到我需要的东西。目前我有一个 Access 数据库,其中包含 3 个表,分别称为 Oven1、Oven2 和 Oven3。每天都会根据 IP 地址和日期字段为每个文件创建 CSV 文件。我想做的是创建一个宏或其他方式,将文件名中的 IP 地址中的适当 CSV 导入正确的烤箱表,并导入日期为今天的 CSV。我还必须将一个字段格式化为短文本,否则将无法正确导入数据。烤箱 3 的 IP 为 10.113.130.220,烤箱 2 的 IP 为 0.221,烤箱 3 的 IP 为 0.222。我想知道这是否可以做到,或者我最好尝试通过 PowerShell 做到这一点?

【问题讨论】:

    标签: ms-access csv vba ms-access-2010


    【解决方案1】:

    如示例所示,如果您希望获取当前日期,可以格式化字符串变量。

    Private Sub GetOvenData()
       Dim strDate As String
       strDate = Format(Date, "yyyymmdd")
       DoCmd.TransferText acImportDelim, , "Oven1", "\\10.113.130.220\folder\" & strDate & ".csv", 1
       DoCmd.TransferText acImportDelim, , "Oven2", "\\10.113.130.221\folder\" & strDate & ".csv", 1
       DoCmd.TransferText acImportDelim, , "Oven3", "\\10.113.130.222\folder\" & strDate & ".csv", 1
    End Sub
    

    \folder\ 更改为您的文件所在的位置。

    【讨论】:

      【解决方案2】:

      当然,这很容易。它看起来像这样:

      DoCmd.TransferText acImportDelim, "spec-oven1", "oven1", "c:\...\10.113.130.220.cvs"
      DoCmd.TransferText acImportDelim, "spec-oven2", "oven2", "c:\...\10.113.130.221.cvs"
      DoCmd.TransferText acImportDelim, "spec-oven3", "oven3", "c:\...\10.113.130.222.cvs"
      

      spec-oven1 是一个保存的导入规范。通过首先手动导入文件并保存导入规范来创建它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-09-07
        • 1970-01-01
        • 2020-05-20
        • 1970-01-01
        • 2011-03-25
        相关资源
        最近更新 更多