我要做的是检查值是否在两列的值之间,如果值在内,则在单元格中放置“1”,如果不是“0”,我可以尝试使用continue和与下一个j但它给了我一个“下一个没有for”。我知道这有一个简单的解决方案,但需要帮助。感谢
For i = 1 To ll
For j = 1 To t
If Cells(j + 1, 12).Value >= Cells(i + 1, 9).Value And Cells(j + 1, 12).Value< Cells(i + 1, 10).Value Then
Cells(j + 1, 13).Value = 1
Next j
Else
Cells(j + 1, 13).Value = 0
Next i
End If
`
答案 0 :(得分:3)
您想要Exit For
For i = 1 To ll
For j = 1 To t
If Cells(j + 1, 12).Value >= Cells(i + 1, 9).Value And Cells(j + 1, 12).Value < Cells(i + 1, 10).Value Then
Cells(j + 1, 13).Value = 1
Exit For
Else
Cells(j + 1, 13).Value = 0
End If
Next j
Next i
但我觉得你需要翻转循环。否则最后将表示的唯一值是当i = 11
时For j = 1 To t
For i = 1 To 11
If Cells(j + 1, 12).Value >= Cells(i + 1, 9).Value And Cells(j + 1, 12).Value < Cells(i + 1, 10).Value Then
Cells(j + 1, 13).Value = 1
Exit For
Else
Cells(j + 1, 13).Value = 0
End If
Next i
Next j
答案 1 :(得分:1)
如果你接着使用for循环,你就会嵌套:这是你的代码的问题。
For i = 1 To ll
For j = 1 To t
If (Cells(j + 1, 12).Value >= Cells(i + 1, 9).Value And Cells(j + 1, 12).Value< Cells(i + 1, 10).Value) Then
Cells(j + 1, 13).Value = 1
Else
Cells(j + 1, 13).Value = 0
End If
Next j
Next i