我尝试用VB.net读取excel char,我使用VS2013和Office2013
当我使用LBOUND和UBOUND函数时,它会导致此异常
代码是:
Dim objApp As New Excel.Application
Dim objWorkbook As Excel.Workbook
Dim objWorksheet As Excel.Worksheet
objWorkbook = objApp.Workbooks.Open(path & FileName)
objWorksheet = objWorkbook.Sheets(2)
area = objWorkSheet.Range("a7", "a8")
Debug.Print(LBound(area))
和例外:
未处理System.InvalidCastException 的HResult = -2147467262
Message =无法将类型为“System .__ ComObject”的COM对象强制转换为类类型“System.Array”。表示COM组件的类型实例不能强制转换为不表示COM组件的类型;不过,只要基础COM组件支持对接口IID的QueryInterface调用,就能将这些实例强制转换为接口。
我搜索谷歌并没有太多有用的信息,所以任何帮助都是值得欣赏的。
答案 0 :(得分:0)
Range
property返回Range
object。要获取该值,请使用Value
的Value2
或Range
object属性。当Range
object跨越多个单元格时,该值将为2D数组(矩阵)。如果Range
object仅跨越单个单元格,则该值将为标量。
Debug.Print(LBound(area.Value))