您直接将颜色分配给 Excel 互操作无法理解的工作表变量。
因此,您需要使用 colorTranslator.ToOle 方法将这些颜色值转换为 OLE 值,或者使用 Excel 着色方式。提供两种方式。
xlWorkSheet.get_Range(xlWorkSheet.Cells[2, 2], xlWorkSheet.Cells[2, 4]).Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Green);
其他
xlWorkSheet.get_Range(xlWorkSheet.Cells[2, 3], xlWorkSheet.Cells[2, 3]).Interior.Color = Excel.XlRgbColor.rgbRed;
这里xlWorksheet是对象excel Worksheet对象。
get_Range 需要 2 个变量,一个是起始单元格,另一个是结束单元格。
所以如果你指定两个值相同,那么只有一个单元格是彩色的。
xlWorkSheet.cells[row, column] 用于指定单元格。
System.Drawing.ColorTranslator.ToOle(SystemDrawing.Color.Green)用于定义OLE格式的颜色。
Excel.XlRgbColor.rgbRed 是一种为单元格着色的 excel 方法
这种方法可以访问大量颜色,可以在这里找到list of colors