Vba &引用;“范围”;对象在添加新行时必须移动
我试图根据if语句为不同的行着色。例如:Vba &引用;“范围”;对象在添加新行时必须移动,vba,excel,Vba,Excel,我试图根据if语句为不同的行着色。例如: ' # 1 If (test = True) Then Worksheets("sheet1").Range("A1:J1").Interior.Color = varColor1 Else Worksheets("sheet1").Range("A1:J1").Interior.Color = varColor2 End If ' # 2 If (test2 = True) Then Works
' # 1
If (test = True) Then
Worksheets("sheet1").Range("A1:J1").Interior.Color = varColor1
Else
Worksheets("sheet1").Range("A1:J1").Interior.Color = varColor2
End If
' # 2
If (test2 = True) Then
Worksheets("sheet1").Range("A2:J2").Interior.Color = varColor1
Else
Worksheets("sheet1").Range("A2:J2").Interior.Color = varColor2
End If
' # 3
'...etc
我的问题是,如果在excel工作表中添加新行,“范围”的值将不正确。例如,如果我在a和B之间添加一行,程序将给新插入的行上色(当这个新插入的行变为B时),而我要上色的实际B行现在是C。如何确保添加行时,正确的行仍然上色。当然,我可以手动更改“范围”值,但我有很多值,因此更改所有值需要很长时间,必须有另一种方法…如果定义命名范围(Ctrl-F3),如果在该范围内插入列,XL将扩展定义
Worksheets("sheet1").Range("test1_range").Interior.Color = varColor1
如果在命名范围的左边缘插入列,请小心,因为它不会包含在命名范围中