【发布时间】:2015-03-13 11:23:37
【问题描述】:
我正在尝试将数据从 excel 文件导入数据表。但问题是最后一列的值被跳过了。其余列的值是完美的。我的 excel 文件包含以下内容:
在数据表中导入数据后如下:
我的代码如下:
Dim connExcel As New OleDbConnection(constr)
Dim cmdExcel As New OleDbCommand()
Dim oda As New OleDbDataAdapter()
Dim dt As New DataTable()
cmdExcel.Connection = connExcel
'Read Data from First Sheet
connExcel.Open()
cmdExcel.CommandText = "SELECT * From [Sheet1$]"
oda.SelectCommand = cmdExcel
oda.Fill(dt)
connExcel.Close()
连接字符串如下:
<add name="ExcelCon12" connectionString="Provider=Microsoft.JET.OLEDB.12.0;Data Source={0};Extended Properties=Excel 8.0" />
<add name="ExcelCon4" connectionString="Provider=Microsoft.JET.OLEDB.4.0;Data Source={0};Extended Properties=Excel 8.0"/>
我做错了什么?
【问题讨论】:
-
在显示数据表时是否有任何可能出现错误?
-
不,令我惊讶的是,如果我在此之后添加更多列,则填充的值没有任何问题。但是,如果我将 excel 文件中的这一列复制粘贴到任何其他列,则该列的问题仍然存在。然后,我创建了另一列,在其中插入了相同的值并删除了该列,之后,将新列重命名为 Credit。它意外地解决了。似乎问题本质上就在列中!!
-
@ubaidashrafmasoody 我在回答中提到它可能位于列本身内,但它也可能是我提到的其他内容......
标签: asp.net vb.net excel import datatable