艾伦使用了很多条件格式,几乎总是使用公式来指定格式的条件。最近,他偶然发现自己有#REF!他的条件格式公式之一出​​错。据Allan估计,这是删除公式中引用的单元格行的结果。影响在于条件格式不适用于该条件。这使Allan担心,自从最初设置条件格式以来,还有其他情况遭到破坏。他想知道是否有任何简单的方法可以检查所有条件格式,以便可以轻松找到这些错误。

最好的方法是使用宏逐步浏览为工作表定义的所有条件格式。下面的宏就是这么做的,寻找任何#REF!公式中的错误。

Sub FindCorruptConditionalFormat()

Selection.SpecialCells(xlCellTypeAllFormatConditions).Select     For Each c In Selection.Cells         For Each fc In c.FormatConditions             If InStr(1, fc.Formula1, "#REF!", _               vbBinaryCompare) > 0 Then                 MsgBox Prompt:=c.Address & ": " _                   & fc.Formula1, Buttons:=vbOKOnly             End If         Next fc     Next c End Sub

如果发现错误,则消息框将同时显示单元格的地址和条件格式设置规则中使用的公式。

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(5730)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本: