我有这个代码
For i = 1 to 9999
If sheets ("sheet1").cells (i, 5).value >= sheets ("sheet2").cells (i, 8).value And sheets ("sheet1").cells (i, 5).value <= sheets ("sheet2").cells (i, 11).value then
Sheets ("sheet1").cells (i, 10).value = "true"
该代码应该执行的操作是检查sheet1上的值是否在sheet2上两个数字之间的值范围内。但这似乎不起作用。任何帮助将不胜感激。
答案 0 :(得分:1)
Sub workbook_initialize()
Dim cell As Excel.Range
Dim LastRow As Long
LastRow = Sheets("sheet1").Range("A" & Rows.Count).End(xlUp).Row
For Each cell In Sheets("sheet1").Range("E1:E" & LastRow)
For i = 1 To Sheets("sheet2").Range("A" & Rows.Count).End(xlUp).Row
If cell.Value >= Sheets("Sheet2").Cells(i, 8).Value And cell.Value <= Sheets("Sheet2").Cells(i, 11).Value Then
Sheets("Sheet1").Cells(cell.Row, 10).Value = Sheets("Sheet2").Cells(i, 3).Value
End If
Next i
Next
End Sub
我能够用这段代码实现我想要的。这将循环通过sheet1中特定范围的单元格,并且如果任何单元格的值大于或等于sheet2列H中的值,并且同时小于或等于同一行中sheet2列K中的值,则使sheet1 J列与sheet2列C中相应单元格的值相同。