Объединить клетки с помощью 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. Я думал, может быть, это объединит клетки, но это не так.

Кто-нибудь знает, как это сделать?

68 голосов | спросил Steven 30 Mayam11 2011, 09:12:40

3 ответа


0

Вы должны использовать это так:

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

вместо:

using (ExcelRange rng = ws.Cells["A1:C1"])
{
    bool merge = rng.Merge;
}
ответил Carles Company 30 Mayam11 2011, 09:49:32
0

Если вы хотите объединить ячейки динамически, вы также можете использовать:

  

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

Все эти переменные являются целыми числами.

ответил mayank 2 ndEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 02 Sep 2014 11:02:06 +0400 2014, 11:02:06
0

Вы можете создать метод расширения:

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;
}

Вы можете использовать это, как и при взаимодействии:

range.Merge();
ответил Paul Cassidy 26 Jpm1000000pmThu, 26 Jan 2017 15:02:22 +030017 2017, 15:02:22

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132