Установите пользовательский BackgroundColor ячейки листа Excel с помощью epplus c#
проблема:
Я использую EEPlus.
Я застрял в применении шестнадцатеричного цветового кода, например #B7DEE8
, для ячейки в моем листе Excel.
я получил следующий (рабочий) код:
ws.Cells["A1:B1"].Style.Fill.PatternType = ExcelFillStyle.Solid;
ws.Cells["A1:B1"].Style.Fill.BackgroundColor.SetColor(Color.Gray);
но мне нужно что-то вроде следующего:
ws.Cells["A1:B1"].Style.Fill.BackgroundColor.SetColor("#B7DEE8");
Итак, мой вопрос: Можно ли использовать шестнадцатеричные цветовые коды с EEPlus? Если да, то как я могу это сделать?
3 ответа:
попробуй такое
Color colFromHex = System.Drawing.ColorTranslator.FromHtml("#B7DEE8"); ws.Cells["A1:B1"].Style.Fill.PatternType = ExcelFillStyle.Solid; ws.Cells["A1:B1"].Style.Fill.BackgroundColor.SetColor(colFromHex);
Это хорошо работает.
Dim objExcel As New ExcelPackage Dim Sheet As ExcelWorksheet = objExcel.Workbook.Worksheets.Add("SheetName") Sheet.Cells["A1"].Style.Fill.PatternType = Style.ExcelFillStyle.Solid Sheet.Cells["A1"].Style.Fill.BackgroundColor.SetColor(Color.FromArgb(170, 170, 170))
вы не обязаны переводить шестнадцатеричную формулу цвета CSS: вы можете просто поставить" 0X " в качестве заголовка этого числа, что делает его целочисленным выражением:
var couleur = System.Drawing.Color.FromArgb(OXB7DEF8); Sheet.Cells["A1"].Style.Fill.PatternType = OfficeOpenXml.Style.ExcelFillStyle.Solid; Sheet.Cells["A1"].Style.Fill.BackgroundColor.SetColor(couleur);