强制将数据类型从Excel导入到DataGrid

时间:2019-03-14 21:53:46

标签: excel vb.net import dataset

与许多人一样,我使用OleDb方法将Excel文件从Excel文件导入到数据集,然后将其显示在DataGrid中:

Dim sqlExcel As String = "SELECT [codPropioPersona], [Nombres], [ApPaterno], [ApMaterno], [CI], [Sexo], [Direccion], [Telefonos], [PorcDescuento] FROM [hoja1$]"
Dim oledbConn As OleDbConnection = New OleDbConnection(sConnectionString)
            oledbConn.Open()
            Dim oledbCmd As OleDbCommand = New OleDbCommand(sqlExcel, oledbConn)
            Dim da As OleDbDataAdapter = New OleDbDataAdapter(oledbCmd)

            DS = New DataSet()
  da.Fill(DS)`

但是,碰巧[CI]是Excel中的一个文本列,但是当它填充de DS时,它就变成了DOUBLE ...!因此,某些配置项比较好(如果它们是数字),但是当它是Aplhanum时,该字段显示为EMPTY(它不会使数据类型脱离excel,因此避免了它)。

我曾尝试在SQL中使用Cast(CI作为varchar),但在Oledb-Excel中却不起作用。因此,我如何才能真正强制将[CI]识别为varchar-string,而不是DOUBLE ?? 谢谢!

0 个答案:

没有答案