The problem:
I am using EEPlus.
I am stuck at applying a hex color code, e.g. #B7DEE8
, for a cell in my Excel sheet.
I got the following (working) code:
ws.Cells["A1:B1"].Style.Fill.PatternType = ExcelFillStyle.Solid;
ws.Cells["A1:B1"].Style.Fill.BackgroundColor.SetColor(Color.Gray);
But I need something like the following:
ws.Cells["A1:B1"].Style.Fill.BackgroundColor.SetColor("#B7DEE8");
So my question is: is it possible to use hex color codes with EEPlus? If so, how can I do that?
Yograj Gupta
Try this
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);
This is working well.
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))
You are not obliged to translate a hexadecimal CSS color formula: You can simply put "0X" as a header of that number, which makes it an integer expression:
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);
来源:https://stackoverflow.com/questions/16998447/set-custom-backgroundcolor-of-a-excel-sheet-cell-using-epplus-c-sharp