简体   繁体   中英

Set custom BackgroundColor of a Excel sheet cell using epplus c#

The problem:

I am using EEPlus.

I am stuck at applying a hex color code, eg #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?

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

This worked for me.

//fill column A with solid red color from hex

worksheet.Column(1).Style.Fill.PatternType = ExcelFillStyle.Solid; worksheet.Column(1).Style.Fill.BackgroundColor.SetColor(ColorTranslator.FromHtml("#FF0000"));`

//fill row 4 with striped orange background

worksheet.Row(4).Style.Fill.PatternType = ExcelFillStyle.DarkHorizontal; worksheet.Row(4).Style.Fill.BackgroundColor.SetColor(Color.Orange);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM