EPPlus изменение цвета границы ячеек


Я пытаюсь изменить цвет границы ячейки в выбранном диапазоне. Не удалось найти никаких других стилей для границ ячеек, кроме как для Весов границ следующим образом:

range.Style.Border.Top.Style = ExcelBorderStyle.Thin;
range.Style.Border.Left.Style = ExcelBorderStyle.Thin;
range.Style.Border.Right.Style = ExcelBorderStyle.Thin;
range.Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
3 8

3 ответа:

Если вы хотите отправить цвета границ на разные части ячеек, вы можете сделать это следующим образом:

range.Style.Border.Top.Color.SetColor(Color.Red);
range.Style.Border.Bottom.Color.SetColor(Color.Green);
range.Style.Border.Left.Color.SetColor(Color.Blue);
range.Style.Border.Right.Color.SetColor(Color.Yellow);

SetColor может принимать любой вид System.Drawing.Color.

Вы можете изменить стиль и цвет границы, используя этот код

range.Style.Border.BorderAround(ExcelBorderStyle.Medium, System.Drawing.Color.Blue);
            using (ExcelRange range = worksheet.Cells["A1:H1"])
            {
                range.Style.Font.Bold = true;
                range.Style.HorizontalAlignment = ExcelHorizontalAlignment.Center;
                range.Style.VerticalAlignment = ExcelVerticalAlignment.Center;
                range.Style.Fill.PatternType = ExcelFillStyle.Solid;
                range.Style.Fill.BackgroundColor.SetColor(Color.White);

                range.Style.Border.Top.Style = ExcelBorderStyle.Thin;
                range.Style.Border.Top.Color.SetColor(Color.Red);
                range.Style.Border.Left.Style = ExcelBorderStyle.Thin;
                range.Style.Border.Left.Color.SetColor(Color.Green);
                range.Style.Border.Right.Style = ExcelBorderStyle.Thin;
                range.Style.Border.Right.Color.SetColor(Color.Green);
                range.Style.Border.Bottom.Style = ExcelBorderStyle.Thin;
                range.Style.Border.Bottom.Color.SetColor(Color.Green);
            }

Конечный результат будет таким, как показано здесь