将Excel文件导入Access时更改数据类型

use*_*756 6 import excel ms-access

在将Excel文件导入Access时,有没有办法更改默认数据类型?(顺便说一下,我正在使用Access 2003).

我知道我有时可以自由地为正在导入的每个列分配任何数据类型,但这只能在我导入非Excel文件时.

编辑:要清楚,我知道导入过程中有一个步骤,您可以在其中更改导入列的数据类型.

事实上,这就是我所要求的.出于某种原因 - 也许它总是Excel文件,也许还有别的东西 - 我有时不能更改数据类型:下拉框是灰色的,我只是不得不忍受任何数据类型访问假设是正确的.

例如,我刚尝试在Access中导入一个大型的Excel文件(12000多行,~200列),其中#105列(或类似的东西)主要填充数字(代码:1=foo, 2=bar等),尽管有少数几个那里也有alpha代码(A = boo,B = far等).访问假设它是一种Number数据类型(即使在我更改了FormatExcel文件本身的值之后),因此给了我这些alpha代码的错误.如果我被允许在导入时更改数据类型,那将为我省去一些麻烦.

我要求Access不会做什么,或者我错过了什么?谢谢.

编辑:下面有两个答案提供有用的建议.将Excel文件保存为CSV然后导入效果很好,就像Chris OC所说的那样简单明了.保存导入规范的建议也非常有用.但是,我选择DK的注册表设置答案作为"已接受的答案".我喜欢它作为一个答案,因为它是一次性唯一步骤,可用于解决我的主要问题(其接入不正确分配数据类型).简而言之,此解决方案不允许我自己更改数据类型,但它使Access准确地猜测数据类型,以便减少问题.

DK.*_*DK. 3

可能是由 Excel Jet 驱动程序默认设置引起的。查看以下注册表项并将其值从默认值 8 更改为 0,这意味着“根据所有值猜测列数据类型,而不仅仅是前 8 行”。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel]
"TypeGuessRows"=dword:00000000
Run Code Online (Sandbox Code Playgroud)

请告知这是否有效。