背景单元取决于条件

我有代码来颜色c#excel单元格的背景:

xlAppToExport = new Application(); xlAppToExport.Workbooks.Add(""); xlWorkSheetToExport = (Worksheet)xlAppToExport.Sheets[1]; if (Int32.Parse(task.progress) < 100 && currentDate > task.duedate) { xlWorkSheetToExport.Range["F2", "F5000"].Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red); } else { xlWorkSheetToExport.Cells[2, 6] = task.StatusDescripcion; } 

正如你所看到的,我希望背景颜色我的细胞取决于条件。 问题是,我所有的单元格都获得Background,因为我使用Range [“F2”,“F5000”]。

我怎么才能只有在我的条件是真实的task.StatusDescripcion列彩色单元格? 问候

更新:

我将代码更改为

 xlAppToExport = new Application(); xlAppToExport.Workbooks.Add(""); xlWorkSheetToExport = (Worksheet)xlAppToExport.Sheets[1]; if (Int32.Parse(task.progress) < 100 && currentDate > task.duedate) { xlWorkSheetToExport.Cells[fila, 6].Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red); /* I added this to identified what columns get validation, so all columns who have value "Retrasado" equals to validation is true*/ xlWorkSheetToExport.Cells[fila, 6] = "Retrasado"; } else { xlWorkSheetToExport.Cells[2, 6] = task.StatusDescripcion; } 

所以现在你可以看到下图中的值正确地改变为“Retrasado”,但是列bakgrond得到了一个extrange规则,它画一个和下一个否,等等,而不是绘制所有谁有价值的“Retrasado”

在这里输入图像说明