excel改变一个格(a)的颜色怎么弄让另一个格(b)同时改变颜色 ?b格里面已经有if函数。

如题所述

由于Excel实际上并没有单元格颜色改变触发的事件,所以

    要真正满足这个需求,需要启动一个定时器来每隔一段时间探测当前单元格的颜色是否发生变化然后做相应处理。

    或者:

    模拟的,使用名称定义获取A格单元格的颜色值并将b格的条件格式的公式设置为当定义的名称为某些固定值时,显示对应的颜色。

    不过,

    a) 由于需要预设颜色,在2003中只能设置3条规则的颜色,而2007版以上的,则可以设置多一点.

    b) 由于需要通过宏表函数获得颜色值,而大部分宏表函数只能在重新计算时更新数据,所以只用这个方法,不能即时得到颜色更新,而必须在触发工作簿重算(如单元格的值改变,或者按了F9)时才能看到效果,也就是说是有滞后的

做了一个利用SelectionChange事件模拟楼主需求的例子,只是,在设置了Sheet1A列单元格颜色后,只有离开了或改变了原本设置颜色的单元格才能看到效果

插入模块定义全局变量:

Public Old_Range As Range, Old_SH As Worksheet

WorkBook的SheetChange事件代码

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Not Old_Range Is Nothing And Not Old_SH Is Nothing Then
    If Old_SH.Name = Sheets(1).Name Then
        For Each r In Old_Range
            If r.Column = 1 Then
                r.Offset(, 1).Interior.ColorIndex = r.Interior.ColorIndex
            End If
        Next
    End If
End If
Set Old_SH = Sh
Set Old_Range = Target
End Sub

附件可参考

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-04-23
改变颜色用的是条件格式,于格子里的函数没什么关系追问

怎么用呢帮忙一下,就是改一个格另外一个也自动跟上颜色

相似回答