excel vba 单元格a1到a10每一个单元格的颜色必须为红色 满足这个条件后单元格b1的值为5

怎么写?
2024-11-15 00:57:59
推荐回答(3个)
回答(1):

以上是全部代码,运行test的宏,实现:

只有在A1到A10全部底色为红色的时候,B1的值设置为5,否则B1不作任何更改(原先是什么就是什么)

回答(2):

Sub 如果底色全红B1为5()
    For Each a In Range("A1:A10")
        If a.Interior.Color <> vbRed Then
            Range("B1").Value = ""
            Exit Sub
        End If
    Next a
    Range("B1").Value = 5
End Sub
Sub 如果字体全红B2为5()
    For Each a In Range("A1:A10")
        If a.Font.Color <> vbRed Then
            Range("B1").Value = ""
            Exit Sub
        End If
    Next a
    Range("B1").Value = 5
End Sub

 For Each a In Range("A1:A10")——搜索区域 Range("A1:A10")

a——为区域中某个单元格

a.Interior.Color——为单元格底色

a.Font.Color——为单元格字体颜色

vbRed——为常量“红色”

Range("B1").Value = ""——不为红色清空B1

Range("B1").Value = 5——全为红色赋值为5

回答(3):

 Sub yanse()
 For i = 1 To 10
    a = Cells(i, 1).Interior.ColorIndex
    If a <> 3 Then
         Cells(1, 2) = 0
        Exit Sub
    End If
 Next i
 Cells(1, 2) = 5
 End Sub

代码如上,如果a1-a10均为红色则b1值为5,如果不是则为0