使用Open Xml从行获取电子表格

3

我正在进行一个Openxml Excel处理项目。在某个类中,我有Row对象。 我能否仅使用Row对象获取此Row对象的当前电子表格?


你是否正在使用Microsoft OpenXML SDK? - Hans
是的...我正在使用Microsoft Open XML SDK 2.0。 - Jayant Varshney
1个回答

1

您可以使用Row实例的Parent属性来导航到该行所属的Worksheet

以下MSDN Row类文章清楚地说明,Row实例的唯一父元素是该行所属的SheetData对象。 SheetData对象的唯一可能的父对象是Worksheet实例(请参见以下MSDN SheetData类文章以获取更多信息)。

示例:

以下示例显示了如何导航到给定Row实例所属的Worksheet。为方便起见,我创建了一个扩展方法:

public static class RowExtensionMethods
{
  public static Worksheet GetWorksheet(this Row r)
  {
    if (r.Parent == null)
    {
      throw new InvalidOperationException("Row does not belong to sheetdata.");
    }

    if (r.Parent.Parent == null)
    {
      throw new InvalidOperationException("Row does not belong to worksheet.");
    }

    return (Worksheet)r.Parent.Parent;
  }
}


// Then in your method use the extension method like so
public void YourMethod(Row r)
{
  Worksheet w = r.GetWorksheet();

  // Do something with the worksheet...
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接