Excel 标识在VBA中具有颜色的列或行

Excel 标识在VBA中具有颜色的列或行,excel,vba,Excel,Vba,不过我有个问题。是否可以使用VBA识别列/行是否包含颜色?例如,我有包含5000行的A到Z列。在630行中,有一些列以红色突出显示,我想在AA列中将其标记为“红色”。另一个例子是,在第2533行G列中,它以红色突出显示,并且在AA列中也应指示“红色”。不包含任何颜色的行应标记为白色。在VBA中是否可以执行该方案?类似于以下内容: 注意,它将按行检查!!因此,如果你在G列中有颜色,但在A列中没有。它会在AA列中给你“颜色”一词。我还选择检查背景颜色。。不是红色,因为有时人们会选择不同的“红色” 如

不过我有个问题。是否可以使用VBA识别列/行是否包含颜色?例如,我有包含5000行的A到Z列。在630行中,有一些列以红色突出显示,我想在AA列中将其标记为“红色”。另一个例子是,在第2533行G列中,它以红色突出显示,并且在AA列中也应指示“红色”。不包含任何颜色的行应标记为白色。在VBA中是否可以执行该方案?

类似于以下内容:

注意,它将按行检查!!因此,如果你在G列中有颜色,但在A列中没有。它会在AA列中给你“颜色”一词。我还选择检查背景颜色。。不是红色,因为有时人们会选择不同的“红色”

如果只需要红色(RGB 255,0,0),请使用第二个If语句并注释掉第一个

Sub CheckColurRows()

Dim myRange As Range
Dim cl As Variant
Dim ws As Worksheet

Set ws = Worksheets("Sheet1")
Set myRange = ws.Range("A1:Z5000") 'Set range


For Each cl In myRange 'Loop through each cell in "myRange
    If cl.Interior.ColorIndex <> xlColorIndexNone Then 'Check if cell has any background colour (not only red)
    'If cl.Interior.Color = RGB(255, 0, 0) Then 'Check if cell only has red colour
        ws.Cells(cl.Row, 27) = "Colour" 'If cell has colour, then print the word "Colour" in Column 27 (Column AA)
    Else
        If ws.Cells(cl.Row, 27) <> "Colour" Then ws.Cells(cl.Row, 27) = "White" 'If cell already have the word colour in column AA, don't overwrite with "white"
    End If
Next cl

End Sub
子检查colurrows()
将myRange变暗为Range
Dim cl作为变体
将ws设置为工作表
设置ws=工作表(“表1”)
设置myRange=ws.Range(“A1:Z5000”)“设置范围
对于myRange中的每个cl,通过“myRange”中的每个单元格循环
如果cl.Interior.ColorIndex xlColorIndexNone,则“检查单元格是否有任何背景颜色(不仅仅是红色)
'如果cl.Interior.Color=RGB(255,0,0),则'检查单元格是否只有红色
ws.Cells(cl.Row,27)=“color”’如果单元格有颜色,则在第27列(AA列)中打印“color”一词
其他的
如果ws.Cells(cl.Row,27)“color”,则ws.Cells(cl.Row,27)=“White”’如果单元格在AA列中已经有单词color,则不要用“White”覆盖
如果结束
下一个cl
端接头
结果如下:


您需要确定一行中的任何单元格是否有颜色?是的,我需要确定一行中的任何单元格是否有颜色,并需要对其进行标记。非常感谢。非常感谢。
Sub FFF()
    Dim rngRow As Range, cell As Range, red_color&
    red_color = RGB(255, 0, 0)
    For Each rngRow In Range("A1:Z5000").Rows
        For Each cell In rngRow.Cells
            cell = IIf(cell.Interior.Color = red_color, "RED", "WHITE")
        Next
    Next
End Sub