|
对于多单元格需要单独判断,并且判断条件是一样的,可以写一个公用过程来进行处理
下面自定义过程中 rng 为条件单元格,num 为判断的值
只要条件相同,这个区域可以是连续的,也可以是不连续的
如不连续的区域这样写:
MsgBox Tf(Range("A3:F3,e5,H6,N3:Y3"), 3)
判断 Range("A3:F3,e5,H6,N3:Y3") 这些单元格的值是否都大于3,只要有一个不大于3 则会返回 false
- Private Function Tf(ByVal Rng As Range, ByVal Num As Double) As Boolean
- Dim C As Range, Js As Integer
- For Each C In Rng
- If C.Value > Num Then
- Js = Js + 1
- Else
- Exit For
- End If
- Next
- Tf = (Js = Rng.Count)
- End Function
复制代码 你的代码修改后:
- If Range("B2") > 6 Then
- GoTo output:
- ElseIf Range("K3") > 5 And Tf(Range("L3:M3"), 3) And Tf(Range("N3:AA3"), 4) Then
- output:
- Set Abc = CreateObject("scripting.filesystemobject")
- Set Ntxt = Abc.opentextfile("1.txt", 8, True)
- Ntxt.writeline "正确"
- Ntxt.Close
- Set Abc = Nothing
- Else
- End If
复制代码 |
|