当我将 Excel 工作表导入 Access 时,它会根据前几行中的内容自动为每一列分配一种数据类型,而与 Access 表字段类型无关。
在我的例子中,我有一个正在使用 TransferSpreadsheet 命令导入的工作表,但是当它导入数据时,其中一列无法导入并产生“类型转换失败”。该字段在 Excel 中被格式化为“常规”,在 Access 2016 中被格式化为“短文本”。如果我将 Excel 中的所有数据格式化为文本,那么它可以正常导入。
前几个条目是数字,因此 Excel 似乎假定整个列数据类型都是数字,任何非数字条目都会生成带有类型转换失败条目的导入错误表。
我的问题是:有没有办法防止 Excel 在导入到 Access 时自动分配字段数据类型并导致数据丢失?或者我是否必须手动更改 Excel 中的数据以防止这种情况发生?
您有两种选择来处理该问题:
选项1:
然后,如果您导入之后,您会发现所有列只有一种数据类型是TEXT。
选项 2:
在 Access 中创建一个表,然后使用选项将记录的副本附加到表中导入工作表。
选择 Access Table,单击Ok完成。
Access 将跳过字段类型选择。
如果您能够对正在导入的文件进行排序,并按降序排序,它会将带有文本的值放在文件顶部。数据类型不会被错误地确定并且应该为您成功。