为什么白色可以运行,无色不可以?
If Not ActiveSheet.Cells(i, 10).Comment Is Nothing And (ActiveSheet.Cells(i, 10).Interior.ColorIndex = 0 Or ActiveSheet.Cells(i, 10).Interior.ColorIndex = 2) Then MsgBox "第" & i & "行无颜色!"
这段代码是用于检查Excel表格中第10列单元格是否有注释,并且背景颜色为白色或无颜色(即默认颜色)。如果单元格背景颜色为无色,则会弹出“第X行无颜色!”的提示框。
白色可以运行是因为白色的颜色索引为1,而无色的颜色索引为0,所以在代码中判断为背景颜色索引为0或2(2为黑色)。如果将代码中的0改为-4142,则可以判断无色的单元格。
修改如下:
If Not ActiveSheet.Cells(i, 10).Comment Is Nothing And (ActiveSheet.Cells(i, 10).Interior.ColorIndex = -4142 Or ActiveSheet.Cells(i, 10).Interior.ColorIndex = 2) Then MsgBox "第" & i & "行无颜色!"