Я пытаюсь перебрать ячейки Excel, и если ячейка объединена, перейдите к следующей ячейке / объединенной ячейке. Я пытался написать это, но он пропускает эти клетки.
int currentColumnCount = 0;
for (int i = 1; i <= sheet.UsedRange.Rows.Count; i++)
{
for (int j = 1; j <= sheet.UsedRange.Columns.Count; j++)
{
Excel.Range cur = (Excel.Range)sheet.UsedRange.Cells[i, j];
if ((bool)cur.MergeCells)
{
if (cur.MergeArea.EntireColumn.Count == sheet.UsedRange.Columns.Count)
{
i += cur.MergeArea.EntireRow.Count;
j = 0;
}
else
{
j += cur.MergeArea.EntireColumn.Count - 1;
currentColumnCount += cur.MergeArea.EntireColumn.Count;
if (currentColumnCount == sheet.UsedRange.Columns.Count)
{
i += cur.MergeArea.EntireRow.Count;
j = 0;
currentColumnCount = 0;
}
}
if (i >= sheet.UsedRange.Rows.Count)
break;
}
}
}