C# で Excel ファイルからセルを多次元配列に抽出しようとしています。次のコード スニペットがあります。
Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(this.pathToFile);
Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[1];
Excel.Range xlRange = xlWorksheet.UsedRange;
Object[,] dataArray;
dataArray = (System.Object[,])xlRange.Value2;
Console.WriteLine(dataArray.GetLength(0));
Console.WriteLine(dataArray.GetLength(1));
Console.WriteLine(dataArray[0,0]); //As a test
コードは最後の行まで機能し、そこで IndexOutOfRange 例外がスローされます。その行の上の 2 行は、次のように正しく印刷されます。
2
117
"IndexOutOFRangeException"
長さがそれぞれ 2 と 117 の場合、配列の 0,0 の位置に何かが存在するべきではありませんか? ここで何が間違っていますか?