Change the background of Cells with C#

42,488

Solution 1

Try

worksheet.Cells[x, y].Interior.Color

You won't be able to use the Colors in .Net directly, they will require a translation.

It is recommended to use the following (obviously change from silver) :

worksheet.Cells[x, y].Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Silver);

Solution 2

Yes you can color a cell or a entire column or entire row.

The below code will help you out.

xlWorkSheet.get_Range(xlWorkSheet.Cells[2, 2], xlWorkSheet.Cells[2, 4]).Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Green);

else

xlWorkSheet.get_Range(xlWorkSheet.Cells[2, 3], xlWorkSheet.Cells[2, 3]).Interior.Color = Excel.XlRgbColor.rgbRed;

Here xlWorksheet is the object excel Worksheet object.

get_Range takes 2 variable one start cell and other is end cell.

so if you specify both the values same then only one cell is colored.

xlWorkSheet.cells[row, column] is used to specify a cell.

System.Drawing.ColorTranslator.ToOle(SystemDrawing.Color.Green) is used to define the color in OLE format.

Excel.XlRgbColor.rgbRed is a excel way of coloring the cells This method gives access to large number of colors which can be found here list of colors

Solution 3

For anyone who want to set Hex color to the background can use:

worksheet.get_Range("A1", "F1").Interior.Color = ColorTranslator.FromHtml("#52b69a");
Share:
42,488
Wassim AZIRAR
Author by

Wassim AZIRAR

https://www.malt.fr/profile/wassimazirar I am not looking for permanent contract (no need to contact me for that) I develop 💻 in .NET Core, JavaScript, Angular and React ⚛

Updated on August 05, 2021

Comments

  • Wassim AZIRAR
    Wassim AZIRAR almost 3 years

    I'm developing an program using C# to manipulate an Excel document, and I'm using

        Microsoft.Office.Interop.Excel._Worksheet worksheet;
    

    When I insert something to a x,y cell I use :

    worksheet.Cells[x, y] = "something";
    

    Now I want to know if it's possible to change the backColor of the Cells[x,y] from C#.

    Thank you.