如何突出显示包含当前单元格文本的单元格

时间:2016-12-22 14:01:36

标签: excel vba excel-vba

我已经查看了条件格式,并且从我可以看到它必须在excel中打开时突出显示与范围内的规则匹配的特定单元格。

excel电子表格是否有办法使用某种形式的规则来检查当前单元格对特定范围内所有其他单元格的文本值,并突出显示与当前单元格匹配的所有单元格&# 39; s文本值?

我正在为一个活动创建一个巨大的预约时间表,我希望人们能够点击其中一个约会,其余的约会将在整个时间表中突出显示。只要您点击另一个包含不同公司名称的单元格,所有具有该公司名称文本值的单元格都将被突出显示。

每行代表一家公司(约50个),每列代表一个约会时段(即9:15-9:30)。每个单元格将保存将在匹配的约会时间与相应公司会面的买方的名称/代码。你可以想象这可能会变得非常混乱,我相信能够持续突出每个买家的所有约会是有用的。

我如何把它放在一起,甚至可能?

1 个答案:

答案 0 :(得分:3)

因为它是圣诞节...使用Worksheet_SelectionChange事件更新您的条件格式。

您可能需要添加空白单元格的检查 - 它会突出显示所选范围内的所有空白单元格(黄色背景,红色文本)。

类似的东西:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    Dim rngAppointments As Range

    If Target.Cells.Count = 1 Then
        Set rngAppointments = Target.Parent.Range("A1:D50")
        If Not Intersect(Target, rngAppointments) Is Nothing Then
            With rngAppointments
                With .FormatConditions
                    .Delete
                    .Add Type:=xlCellValue, Operator:=xlEqual, Formula1:="=""" & Target.Value & """"
                End With
                .FormatConditions(.FormatConditions.Count).SetFirstPriority
                With .FormatConditions(1)
                    With .Font
                        .Bold = True
                        .Color = -16776961
                    End With
                    With .Interior
                        .Color = 65535
                    End With
                End With
            End With
        End If
    End If
End Sub