recorrer planilla insertar guardar formato escribir ejemplos desde datos dar crear combinar celdas archivo c# openxml epplus

planilla - Establecer BackgroundColor personalizado de una celda de hoja de Excel usando epplus c#



insertar datos en excel desde c# (3)

Esto está funcionando bien.

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

El problema:

Estoy usando EEPlus.

Estoy atascado en aplicar un código de color hexadecimal, por ejemplo, #B7DEE8 , para una celda en mi hoja de Excel.

Obtuve el siguiente código (de trabajo):

ws.Cells["A1:B1"].Style.Fill.PatternType = ExcelFillStyle.Solid; ws.Cells["A1:B1"].Style.Fill.BackgroundColor.SetColor(Color.Gray);

Pero necesito algo como lo siguiente:

ws.Cells["A1:B1"].Style.Fill.BackgroundColor.SetColor("#B7DEE8");

Entonces mi pregunta es: ¿es posible usar códigos de color hexadecimales con EEPlus? Si es así, ¿cómo puedo hacer eso?


No está obligado a traducir una fórmula de color CSS hexadecimal: simplemente puede poner "0X" como encabezado de ese número, lo que lo convierte en una expresión entera:

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


Prueba esto

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