3

我正在使用此代码从 csv 文件复制数据以访问表:

str = "insert into tablex (field1, field2, field3) 
select field1, field2, field3
from
 [Text; 
FMT=Delimited; 
HDR=YES; 
CharacterSet=437; 
DATABASE=" & ThisWorkbook.Path & "\data-for-tool-refresh].csvtable.csv;"

但是在粘贴数据后,某些列会被截断,即十进制值会被删除。我已经检查了访问表中的数据类型,它设置为“double”,但值仍然被截断,例如:15.12345 变为 15

有人可以建议我一种方法来获取这些值而不会被截断

4

1 回答 1

1

将外部数据准确导入 Access 的最佳方法是描述外部文件。

这可以通过导入规范(导入向导中的高级选项卡)来完成,宏或 VBA 可以引用该规范。

如果您需要坚持使用 ODBC 文本驱动程序,就像您的问题一样,您需要一个 schema.ini。 http://office.microsoft.com/en-us/access-help/initializing-the-text-data-source-driver-HP001032166.aspx?CTT=1解释了这一点。一个很大的缺点是规范链接到文件名。

于 2013-02-06T07:18:21.173 回答