[英]VBA macro INSTR function in triple if statement
我尝试使用“ instring”功能为计数器创建三重过滤器。 主要思想是定义一个范围,然后检查每个单元格,如下所示:
1)在单元格中找到内容“ 0111”
2)如果在单元格中找到内容“ 0111”,请检查该单元格左列是否存在内容“ 127”
3)检查当前单元格的行是否不是红色(颜色3)
4)如果上述所有条件都成立,请加计数器。
我的代码如下所示:
Set SrchRng4 = Range("J1:J100")
For Each cel In SrchRng4
If InStr(1, cel.Value, "0111", 1) > 0 Then
If InStr(1, ActiveCell(Offset(-1,0), "127", 1) > 0 And cel.EntireRow.Interior.ColorIndex <> 3 Then
count_K = count_K + 1
End If
Next cel
它适用于搜索“ 111”和红色行的示例,但在添加“ 127”过滤器后不起作用。 有人可以提供一些意见吗? 我想语法有问题吗?
亲切的问候,马库斯
For Each cel In Range("J1:J100")
If InStr(cel, "0111") And InStr(cel( ,0), "127") _
And cel.EntireRow.Interior.Color <> vbRed Then count_K = count_K + 1
Next
True
,因此> 0
是可选的 cel(,0)
类似于cel.Offset(0,-1)
来获得cel
左侧的单元格 vbRed
和rgbRed
是红色的常量,但是.ColorIndex <> 3
也可以 If .. Then
语句应具有匹配的End If
语句,除非它在一行上
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.