我正在使用此代码将数据从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
有人可以建议我一种方法来获取这些值而不会被截断
答案 0 :(得分:1)
将外部数据准确导入Access的最佳方法是描述外部文件。
这可以通过导入规范(导入向导中的“高级”选项卡)完成,可以由宏或VBA引用。
如果您需要坚持使用ODBC文本驱动程序,就像在您的问题中一样,您需要schema.ini。 http://office.microsoft.com/en-us/access-help/initializing-the-text-data-source-driver-HP001032166.aspx?CTT=1解释了这一点。一个很大的缺点是规范与文件名相关联。