我有一排24个单元格,其值为Null且为“ON”。我想写一个宏来检查这一行,如果它连续包含2个6“ON”的块。请帮忙
答案 0 :(得分:0)
您没有指定块之间是否需要任何空单元格,或者6个连续ON中的2个以上块是否满足条件。我假设只有2个区块符合标准,并且这两个区块可以在彼此之后,即连续12个ON。
Function CheckForOn()
Dim myRange
Dim numberOfONs
Dim numberOfBlocks
Set myRange = Worksheets("Sheet2").Range("A1:X1")
numberOfONs = 0
numberOfBlocks = 0
For Each cell In myRange
If cell.Value = "ON" Then
numberOfONs = numberOfONs + 1
If numberOfONs = 6 Then
numberOfBlocks = numberOfBlocks + 1
numberOfONs = 0
End If
Else
numberOfONs = 0
End If
Next cell
If numberOfBlocks = 2 Then
CheckForOn = True
Else
CheckForOn = False
End If
End Function