47
我正在使用Windows应用程序将数据表导出到Excel。它正在工作。现在我想为单元格中的特定文本提供一些颜色。我该怎么做?使用C#在Excel中更改单元格颜色
我正在使用Windows应用程序将数据表导出到Excel。它正在工作。现在我想为单元格中的特定文本提供一些颜色。我该怎么做?使用C#在Excel中更改单元格颜色
对于文本:
[RangeObject].Font.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red);
对于细胞背景
[RangeObject].Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red);
注:这假定您将声明常量名为COLUMN_HEADING_ROW
,FIRST_COL
和LAST_COL
行和列的索引,而_xlSheet
是ExcelSheet
的名称(使用Microsoft.Interop.Excel
)
首先,定义范围:
var columnHeadingsRange = _xlSheet.Range[
_xlSheet.Cells[COLUMN_HEADING_ROW, FIRST_COL],
_xlSheet.Cells[COLUMN_HEADING_ROW, LAST_COL]];
然后,设置该范围的背景色:
columnHeadingsRange.Interior.Color = XlRgbColor.rgbSkyBlue;
最后,设置字体颜色:
columnHeadingsRange.Font.Color = XlRgbColor.rgbWhite;
而这里的代码合并:
var columnHeadingsRange = _xlSheet.Range[
_xlSheet.Cells[COLUMN_HEADING_ROW, FIRST_COL],
_xlSheet.Cells[COLUMN_HEADING_ROW, LAST_COL]];
columnHeadingsRange.Interior.Color = XlRgbColor.rgbSkyBlue;
columnHeadingsRange.Font.Color = XlRgbColor.rgbWhite;
这很好,只有内部擦除b命令:( – Yola 2015-03-19 08:54:58
)您可以使用'Excel.XlRgbColor.rgbRed'来代替避免'System.Drawing.ColorTranslator'的混乱。 – kmote 2015-10-07 15:46:12
如何按细胞颜色进行分类? – Si8 2016-12-19 16:08:38