基于Active Cell的条件格式化

问题描述 投票:0回答:2

我正在尝试使用Excel的条件格式。我的要求是

using conditional formatting
如果所选单元格位于 $A$1:$D$4 之间,我想突出显示单元格 $A$1:$D$4。如果所选单元格位于 $A$1:$D$4 之外,则不应突出显示它。一种方法是用条件格式编写公式

IF(....)

如果所选单元格与给定范围($A$1:$D$4)相交,则应返回 true,否则应返回 false。但我需要的公式是什么?

excel conditional-formatting
2个回答
0
投票

这里有一个有点绕的策略:

  1. 定义一个名称,比如说
    rActive
    并将其设置为引用常量
    =FALSE
  2. 使用公式有条件地设置所需范围的格式
    =rActive
  3. 添加工作表选择更改事件

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    ThisWorkbook.Names("rActive").RefersTo = _
    Not Application.Intersect(ActiveCell, [A1:D4]) Is Nothing
    End Sub

结果:范围根据名称的值进行条件格式化

rActive

每次更改所选单元格时,事件都会更新
rActive


0
投票

我也想做这个。似乎应该有一个函数 ISSELECTED(A1),如果单元格 A1 包含在当前选择中,则其值为 TRUE。

© www.soinside.com 2019 - 2024. All rights reserved.