突出显示" True"矩阵值

时间:2017-11-28 19:57:13

标签: excel conditional-formatting

我在Excel表格中有一个网格,其中x表示产品和要素之间的匹配。它是一个非常大的网格,难以阅读,因此为了改善显示效果,我希望在选择功能时突出显示相应产品的行。当我选择一个功能时,我希望突出显示相应功能的行。

如果我的表格如下:

                 Feature 1|Feature 2|Feature 3|
       Product 1|    x    |    x    |         |
       Product 2|    x    |         |    x    |
       Product 3|         |    x    |         |  

在上面的示例中,选择功能2,例如,将突出显示产品1和产品3的行。选择产品1时,将突出显示功能1和功能2.

这是可以通过条件格式化完成的,还是需要VBA的。我一直在尝试使用= CELL("地址")引用,但是当我选择一个功能(或TRUE)时,我无法弄清楚如何将其应用于每个TRUE产品我选择产品时的功能。)

如果我能弄清楚如何使其发挥作用,我的计划是使交互动态如下:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Application.Calculate
End Sub

1 个答案:

答案 0 :(得分:0)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub

Dim rng As Range, cell As Range

Me.Cells.Interior.Color = xlNone

If Not Intersect(Range("1:1"), Target) Is Nothing Then
    Set rng = Intersect(Me.UsedRange, Columns(Target.Column))
    If Not rng Is Nothing Then
        For Each cell In rng
            If cell.Value = "x" Then Me.Cells(cell.Row, 1).Interior.ColorIndex = 8
        Next cell
    End If
ElseIf Not Intersect(Range("A:A"), Target) Is Nothing Then
    Set rng = Intersect(Me.UsedRange, Rows(Target.Row))
    If Not rng Is Nothing Then
        For Each cell In rng
            If cell.Value = "x" Then Me.Cells(1, cell.Column).Interior.ColorIndex = 8
        Next cell
    End If
Else
    Exit Sub
End If

End Sub