我正在尝试比较两个单元格,如果值更大,则将整行格式化为红色,如果它小于黄色,如果值等于绿色。我在if循环中遇到错误并且数据是动态的,因此没有特定的范围值
我收到此错误:
运行时错误1004 object_global的方法范围失败
在此代码的第一行。为什么呢?
If Range("c" & i2).Value > Range("D" & i2).Value Then ' <~~~~ Error
Range("E" & i2) = "Resource Not fully Utilised"
Range("a" & i2, "e" & i2).EntireRow.Interior.Color = RGB(255, 255, 0)
ElseIf Range("c" & i2).Value < Range("D" & i2).Value Then
Range("E" & i2) = "Resource over Utilised"
Range("a" & i2, "e" & i2).EntireRow.Interior.Color = RGB(255, 0, 0)
Else
Range("E" & i2) = "Resource properlly Utilised"
Range("a" & i2, "e" & i2).EntireRow.Interior.Color = RGB(255, 0, 0)
End If
答案 0 :(得分:0)
使用for循环来解决我的问题:
row1 = Range("c1").SpecialCells(xlCellTypeLastCell).row
row1 = row - 1
For i2 = 1 To row1
If Range("c" & i2).Value > Range("D" & i2).Value Then
Range("E" & i2) = "Resource Not fully Utilised"
Range("a" & i2, "e" & i2).Interior.Color = RGB(255, 255, 0)
ElseIf Range("c" & i2).Value < Range("D" & i2).Value Then
Range("E" & i2) = "Resource over Utilised"
Range("a" & i2, "e" & i2).Interior.Color = RGB(255, 0, 0)
Else
Range("E" & i2) = "Resource Fully Utilised Properly"
Range("a" & i2, "e" & i2).Interior.Color = RGB(0, 255, 0)
End If
Next i2