我尝试使用Excel Interop 15.0在Excel工作表中读取单元格。在开始时,我的代码看起来像这样,它工作
Range myvar = (Worksheet.Cells[1,1]) as Range
由于某些未知原因,此代码不再有效,我需要使用
Range myvar = Worksheet.Cells[1,1]
此外,下面的代码抛出了InvalidCastException
Range myvar = (Range)(Worksheet.Cells[1,1])
有人可以告诉我为什么第一个代码在开始工作但现在失败了吗? 为什么最后一个例子会引发异常?
[更新 - 2017-05-27 09:42]
很奇怪,在这里,我的代码:
if (!string.IsNullOrWhiteSpace((pBlueBookWorksheet.Cells[pBlueBookWorksheet.Range[aSetting.BlueBookCodeCellName].Row, i] as Range).Value.ToString()))
lCodeIndex.Add(Convert.ToString((pBlueBookWorksheet.Cells[pBlueBookWorksheet.Range[aSetting.BlueBookCodeCellName].Row, i] as Range).Value), i);
昨天和今天早上我尝试之前没有用。所以我开始删除'as Range',但我注意到有一些'as Range'工作,但有些不工作。所以,我决定再次使用'as Range'和 MIRACLE ,该程序有效吗?!? 这就好像在后台再次写一些内容。 哦,晚上,我安装了VS2017 Update 2
所以如果有人对此现象有解释,请发送
由于