【发布时间】:2017-12-14 19:20:24
【问题描述】:
我正在尝试将 excel 数据读入数据表对象。但是,excel 中的某些列的数据已损坏,具体是 DATE 类型。
我正在使用 VB 代码读取数据
-
OLEDB 连接
dtData = objExcelReader.ReadWorksheet(strFilePath.ToString, "select * from sheet1$", True)
使用此代码,我收到“Not a legal OleAut date”错误。
-
使用 ExcelReader,
objExcelReader = New ExcelIO.ExcelReader objExcelReader.UseHeaders = True objExcelReader.AllowSpacesInColumnName = blnAllowSpacesInColumnName objExcelReader.ReadFormatting = True objExcelReader.TrimStrings = True objExcelReader.ClearColumnDatatypes() objExcelReader.DefaultStartRow = intStartRow dtData = objExcelReader.Read(strFilePath.ToString, thisApplication, strInputSheetName)
我得到异常 - '超出当前范围。 (来自 HRESULT 的异常:0x8002000A (DISP_E_OVERFLOW))'
-
在查询中使用范围,我可以获取记录。在这种情况下,我需要包含多个范围。
dtData = objExcelReader.ReadWorksheet(strFilePath.ToString, "select * from sheet1$O:AK", True)
有人可以帮我在此处包含多个范围,例如 A:K 和 O:AK
或修复上述任何问题并忽略那些异常列。
【问题讨论】: