我正在努力寻找合适的语法来改变单元格的静态列范围(A:T)内的单元格的字体颜色,但是变量行。所有变量都已正确定义,这正是我写这行代码导致错误的方式。这是我目前的片段:
If Sheets("InfoSheet").Range("BR21").Value = True Then
Sheets("AcctTable").Range(Cells(iOutputRow, "A"), Cells(iOutputRow, "T")).Interior.ColorIndex = 3
Else
Sheets("AcctTable").Range(Cells(iOutputRow, "A"), Cells(iOutputRow, "T")).Interior.ColorIndex = 1
End If
我也尝试了以下代码:
If Sheets("InfoSheet").Range("BR21").Value = True Then
Sheets("AcctTable").Range("A" & iOutputRow & ":" & "T" & iOutputRow).Font.Color = vbRed
Else
Sheets("AcctTable").Range("A" & iOutputRow & ":" & "T" & iOutputRow).Font.Color = vbBlack
End If
但是,我也有错误。有什么见解吗?
更新:我的问题是我没有在这些代码行之前取消保护工作表。我仍然用各种各样的评论更新了我的代码,谢谢大家。
答案 0 :(得分:0)
第一组代码唯一明显的问题是不恰当的对象:
With Sheets("AcctTable")
If Sheets("InfoSheet").Range("BR21").Value = True Then
.Range( .Cells(iOutputRow, "A"), .Cells(iOutputRow, "T")).Interior.ColorIndex = 3
Else
.Range( .Cells(iOutputRow, "A"), .Cells(iOutputRow, "T")).Interior.ColorIndex = 1
End If
End With