我有一排具有不同值的单元格。我期待找到两个指定值之间的三个连续单元格并使用和If Then来设置条件。
有更好的方法吗?
set Bottom = 275
set Top = 1600
For i = 4 To LastRow
Set r1 = Cells(5, i)
Set r2 = r1.Offset(0, 1)
Set r3 = r1.Offset(0, 2)
If r1.Value < Top And r2.Value < Top and r3.Value < Top Then
'Do something
Elseif r1.Value > Bottom And r1.Value < Top And r2.Value > Bottom And r2.Value < Top And r3.Value > Bottom and r3.Value < Top Then
'Do something
Else
'Do something
End If
Next i
答案 0 :(得分:0)
这是一个非常小的代码段,所以要弄清楚你的代码到底在做什么有点困难。您几乎肯定会想要使用循环来遍历单元格:
How to loop through a list of data on a worksheet by using macros in Excel
我会将计算数据有效性的逻辑移到function,以便它类似于:
Function InValidRange(Value as integer)
Dim Top As integer
Dim Bottom as integer
Top= 1600
Bottom = 275
If Value < Top and Value > Bottom Then
InValidRange = true
Else
InValidRange = false
End If
End Function
If InValidRange(r1.Value) And InValidRange(r3.Value) And InValidRange(r3.Value) then
'Do something
End If
答案 1 :(得分:0)
您可能想尝试调整此代码(已评论):
create sequence MYSEQ_sequence
start with 100
increment by 5;