如何根据单元格颜色设置另一个单元格的值
如下图所示,如果右边的单元格“内容1~3”中有一个是红色的,左边的“结果”value就是F,一个红色单元格都没有的“结果”是T。
如果能在excel上直接设置就最好不过了。
请大侠指点一二!
[解决办法]
Sub 宏1()
Dim i As Long
'通过下面的语句获取你目前EXCEL中红颜色的值
'Sheets("Sheet1").Cells(1, 5) = Sheets("Sheet1").Cells(1, 2).Interior.ColorIndex
For i = 2 To 65535
For j = 2 To 4
If Sheets("Sheet1").Cells(i, j).Interior.ColorIndex = 3 Then
Sheets("Sheet1").Cells(i, 1) = "F"
End If
Next j
Next i
End Sub
[解决办法]
修改了一下
Sub 宏1()
Dim i As Long
'通过下面的语句获取你目前EXCEL中红颜色的值
'Sheets("Sheet1").Cells(1, 5) = Sheets("Sheet1").Cells(1, 2).Interior.ColorIndex
Dim HasRedcell As Boolean
HasRedcell = False
For i = 2 To 65535
For j = 2 To 4
If Sheets("Sheet1").Cells(i, j).Interior.ColorIndex = 3 Then
HasRedcell = True
Exit For
End If
Next j
If HasRedcell = True Then
Sheets("Sheet1").Cells(i, 1) = "F"
Else
Sheets("Sheet1").Cells(i, 1) = "T"
End If
HasRedcell = False
Next i
End Sub
[解决办法]
If Sheets("Sheet1").Cells(i, j).Interior.ColorIndex = 3 Then
改成
If Sheets("Sheet1").Cells(i, j).FormatConditions(1).Interior.ColorIndex = 3 then
试试。
[解决办法]
FormatConditions(1)
这个指的是条件格式里的第一个条件。
FormatConditions(2)
这个指的是条件格式里的第二个条件。
所以如果取白色应该是
Sheets("Sheet1").Cells(i, j).FormatConditions(2).Interior.ColorIndex