将Excel数据导入访问

Iul*_*ian 2 .net excel ms-access

我的VB.NET应用程序正在使用导入一些Excel工作表进入访问

command.CommandText = "SELECT * INTO [MS Access;Database=" & current_db & "].[" & sheet_name & "] FROM [" & sheet_name & "$]"
Run Code Online (Sandbox Code Playgroud)

问题是,如果我在Excel中有一些带有绿色错误消息的单元格,则它们不会在访问中导入.而且他们实际上采用相同的格式,他们没有领先'但是擅长它的数字格式化为文本.

一个简单的方法是在excel中简单地纠正这个问题,但通常用户忘记这样做并跳过数据.

如何强制连接将指定的列导入为数字?

Raj*_*ore 5

我会这样做的

  1. 在Access中,定义YourNewStagingTable要导入的表结构(调用它)(不要将其作为最终表 - 这纯粹是您的临时表(我通常只在这里将所有字段定义为TEXT).
  2. 使用 INSERT INTO YourNewStagingTable SELECT Columns FROM SpreadsheetPath
  3. 在此表上运行所有更正和数据验证
  4. 将数据YourNewStagingTable移至FinalDataTable

如果仍遇到数据类型转换问题,则必须更改该文件的ISAM映射.