使用EPPlus合并单元格?

我正在使用EPPlus库来读取/写入Excel文件: http ://epplus.codeplex.com/

我正在试图简单地合并一些单元格时写一个文档:

using (ExcelPackage pck = new ExcelPackage()) { //Create the worksheet ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Demo"); //Format the header for column 1-3 using (ExcelRange rng = ws.Cells["A1:C1"]) { bool merge = rng.Merge; } } 

有一个名为Merge的属性,只是返回true或false。 我想也许会合并单元格,但不是。

有人知道怎么做吗?

你必须这样使用它:

 ws.Cells["A1:C1"].Merge = true; 

代替:

 using (ExcelRange rng = ws.Cells["A1:C1"]) { bool merge = rng.Merge; } 

如果你想dynamic地合并单元格,你也可以使用:

worksheet.Cells[FromRow, FromColumn, ToRow, ToColumn].Merge = true;

所有这些variables都是整数。

您可以创build一个扩展方法:

 public static void Merge(this ExcelRangeBase range) { ExcelCellAddress start = range.Start; ExcelCellAddress end = range.End; range.Worksheet.Cells[start.Row, start.Column, end.Row, end.Column].Merge = true; } 

你可以像使用interop一样使用它:

 range.Merge();