Excel VBA行突出显示

时间:2016-08-25 12:21:28

标签: excel vba

我找到了一些如何突出显示当前所选单元格行的示例。我的问题是我只需要在第3行和更高的行中执行此操作。

这是我到目前为止所提到的:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
    Application.ScreenUpdating = False
    Cells.Interior.ColorIndex = 0
    With Target
        .EntireRow.Interior.ColorIndex = 8
    End With
    Application.ScreenUpdating = True
End Sub

这就像广告宣传的那样,但我正在努力避免如何不丢失第1行和第2行中标题单元格的背景颜色。我确信它需要一个" if"某种,但我不确定我需要把它放在哪里。

另外,无论如何我可以将它应用到整个工作簿吗?我在工作簿中有60张,如果我不能将代码复制60次,那将是理想的。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

以下代码可以解决问题:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
        If Target.Row <> 1 and Target.Row <> 2 Then
            Application.ScreenUpdating = False
            Cells.Interior.ColorIndex = 0
            Range("A1:AF2").Interior.ColorIndex = 47
            Target.EntireRow.Interior.ColorIndex = 8
            Application.ScreenUpdating = True
        End If
End Sub

您将其放在ThisWorkbook而不是特定的Sheet

代码:

If Target.Row <> 1 and Target.Row <> 2 Then

检查Target.Row是否不等于Row 1 and 2