我已经从第14列开始填充了一个excel文件。重要的行是2到30个。比如说。
valueArray = (object[,])excelRange.get_Value(Excel.XlRangeValueDataType.xlRangeValueDefault);
我使用get_Value获取行和列的所有值。当我将列从第14位更改为1,第15位更改为2时出现问题,依此类推。所以如果我要用
进行迭代 valueArray[row, column]
搜索第2行和第14列,第3行和第14列等等,我将得到一个错误,因为valueArray对列的解释不同。 有没有办法从excel表中获得固定的头寸?
答案 0 :(得分:1)
最简单的方法是在使用值Array迭代时应用偏移量:
for (int row = 2; row <= 30; row++)
{
for (int column = 14; column <= 100500; column++)
{
object value = valueArray[row - 2, column - 14];
}
}
否则你可以使用另一种数据结构:
Dictionary<Point, Object> valueArray = new Dictionary<Point, Object>();
valueArray[new Point(2, 14)] = (worksheet.Cells[2, 14] as Excel.Range).Value; // Add values in this way
Object value = valueArray[new Point(2, 14)]; // Read values