Excel具有可以应用于单元格的两种不同类型的格式。

首先是显式格式化。通过使用工具栏或通过“格式”菜单使用“单元格”选项,可以应用这种格式设置。

第二种格式是条件格式。根据您定义的一组规则应用这种格式。

重要的是要了解这两种格式是分开的并且彼此不同。例如,如果您将单元格显式设置为粗体红色,则它就是这种显示方式。如果您以后对其应用条件格式,并且该格式导致单元格显示为绿色,这就是正在发生的情况-单元格的颜色为_appearing_,但其格式仍为红色。

这与VBA有什么关系?如果您在VBA中测试单元格的格式,则您正在测试的格式是显式格式。

在上述情况下,这意味着测试将始终指示该单元格为粗体红色,并且无论条件格式化对该单元格进行了什么操作,都不会报告其为绿色。这是因为条件格式会影响单元格的显示,而不是其基础(显式)格式。

所有这一切的另一个结果是,如果您想找出正在显示的条件格式,则可能需要在VBA中重新创建所有条件测试。这很快就会变得相当复杂。有关此主题的更多信息,您可以参考一个很棒的页面。在以下位置查看Chip Pearson的页面之一:

http://www.cpearson.com/excel/CFColors.htm

注意:

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

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

本技巧(8490)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处为Excel的较旧菜单界面找到此技巧的版本: