如何从word文档中读取合并的单元格

时间:2014-06-24 13:23:58

标签: c# .net

我在阅读合并的单元格时遇到以下异常。

“无法访问此集合中的各个行,因为该表具有垂直合并的单元格。”

我的代码是,

foreach (Row aRow in doc.Tables[i].Rows)
{
   foreach (Cell aCell in aRow.Cells)
   {
       MessageBox.Show(aCell.Range.Text);
   }
} 

//我的表格格式为..

| R1C1 | R1C2 | ______ |

| R2C1 | R2C2 | R * C3 .. |

| R3C1 | R3C2 | ______ |

2 个答案:

答案 0 :(得分:8)

您可以尝试以下方法:

Table table = Globals.ThisDocument.Tables[1];
Range range = table.Range;
for (int i = 1; i <= range.Cells.Count; i++)
{
    if(range.Cells[i].RowIndex == table.Rows.Count)
    {
        range.Cells[i].Range.Text = range.Cells[i].RowIndex + ":" + range.Cells[i].ColumnIndex;
        MessageBox.Show(range.Cells[i].Range.Text);
    }
}

答案 1 :(得分:0)

可以枚举Table.Range.Cells:

foreach (Cell cell in doc.Tables[i].Range.Cells)
{
    Debug.Print(cell.Range.Text);
}