【问题标题】:open xml sdk spreadsheet check merged cells打开 xml sdk 电子表格检查合并的单元格
【发布时间】:2019-06-25 10:50:43
【问题描述】:

我正在尝试通过 open xml sdk 读取具有以下格式的 excel 电子表格,并确定哪些第一行合并的单元格对应于第二行。

如何检查单元格是否处于合并状态?

------------------------------------------------------------
       Main Heading 1     |     Main heading 2              |
------------------------------------------------------------
Sub Head 1   | sub head 2 |     sub head 3                  |
-------------------------------------------------------------
             |            |                                 |

【问题讨论】:

    标签: .net openxml spreadsheet openxml-sdk


    【解决方案1】:
    const string testFileName = @"C:\Users\koo\Desktop\test\test\Test.xlsx";
    string sheetName = "Sheet1";
    using (SpreadsheetDocument document = SpreadsheetDocument.Open(testFileName, true))
    {
        WorkbookPart wbPart = document.WorkbookPart;
        Sheet theSheet = wbPart.Workbook.Descendants<Sheet>().Where(s => s.Name == sheetName).FirstOrDefault();
        WorksheetPart wsPart = (WorksheetPart)(wbPart.GetPartById(theSheet.Id));
        MergeCells mcs = wsPart.Worksheet.Descendants<MergeCells>().First();
    
        var mcl = mcs.ChildElements.ToList();
        foreach (MergeCell mc in mcl)
        {
    
        }
        document.WorkbookPart.Workbook.Save();
    }
    

    【讨论】:

      【解决方案2】:

      如果你使用的是 ClosedXml 库,那么要检查一个单元格是否被合并,你可以使用下面给出的代码。

      XLWorkbook excelWorkBook = null;
      excelWorkBook = new XLWorkbook(filePath);
      var ws = excelWorkBook.Worksheet("Sheet1"); 
      bool check= ws.Cell("Cell Name").IsMerged();
      

      检查将返回真或假

      伊丽莎白

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-06-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多