将 CSV 导入新表 -MS Access

Posted

技术标签:

【中文标题】将 CSV 导入新表 -MS Access【英文标题】:Import CSV into a new table -MS Access 【发布时间】:2016-08-08 15:29:36 【问题描述】:

我正在尝试将文件夹中的 CSV 文件作为新表导入 Access,我一直在尝试使用代码

Public Const rootdir = "C:\Users\deb670s\Desktop\importcsv"

Sub import()
Dim nr As Integer
Dim file As AcBrowseToObjectType
file = Dir$(rootdir & "*.csv")
nr = 1
Do While file <> ""
DoCmd.TransferText acImportDelim, "ImportSpec", "NewTableName-" & nr, rootdir & file, True, , msoEncodingCentralEuropean
file = Dir$
nr = nr + 1
Loop
End Sub

但我收到一条错误消息,提示未在 msoEncodingCentralEuropean 定义变量有人能告诉我哪里出错了吗?

【问题讨论】:

Access 对msoEncodingCentralEuropean 常量一无所知,除非您添加对 Microsoft Office 对象库 的引用。或者您可以使用常量的值 1250,而不是常量的名称。 我这样做了,但现在我在 file = Dir$(rootdir & "*.csv") 行上得到错误类型不匹配。 好的,这是另一个错误。那么现在C:\Users\deb670s\Desktop\importcsv 中的importcsv 是什么?如果这是包含 CSV 文件的文件夹的名称,请执行以下操作:Public Const rootdir = "C:\Users\deb670s\Desktop\importcsv\" 是的,我修改了它,但错误仍然存​​在? AcBrowseToObjectType 是枚举的名称。你需要Dim file As String 【参考方案1】:

最后一个参数必须是 CodePage 值:

Code Page Identifiers

【讨论】:

什么是代码页标识符?我应该在哪里添加它? DoCmd.TransferText的最后一个参数。【参考方案2】:

嗯...我认为您应该尝试这种方式。

http://www.accessmvp.com/KDSnell/EXCEL_Import.htm#ImpAllWktsSepTbl

只需将 XLS 更改为 CSV。

【讨论】:

以上是关于将 CSV 导入新表 -MS Access的主要内容,如果未能解决你的问题,请参考以下文章

如何将 CSV 导出复制到添加了新列的 Redshift 表中?

我可以使用 SQL 将存储为 CSV(逗号分隔值)的表列的内容拆分为新表中的单独行吗?

大量 CSV 数据到一个数据库中的新 MySQL 表中

将 Unpivot 结果导入新表并匹配键

CSV 文件到 Lua 表并作为新表或函数访问这些行()

指定数据导入到新表