【发布时间】:2013-05-02 04:29:43
【问题描述】:
标题可能通常很简单,但即使在网上搜索了几个论坛之后,我也没有得到解决方案。
让我解释一下这个问题。
我有一个 Excel 工作簿,如果条件引用其他单元格,则很少使用列。根据单元格的内容,定义单元格的背景颜色。例如。如果单元格为空白,它会自动变为红色。这些红色单元格表示缺少信息。所以我正在尝试设计一个宏来识别这些红细胞并获取每个红细胞的地址。
为此,我使用代码进行测试,MsgBox IIf(ActiveCell.Interior.ColorIndex = 3, "Yes", "No")
但这不起作用。原因是,无论它是什么颜色,宏都将颜色索引标识为 -4142。无论是白色还是蓝色还是红色,它仍然显示-4142。
当我在论坛上问这个问题时,我被重定向到这个页面。
http://www.cpearson.com/excel/CFColors.htm
我测试了该页面中给出的功能。它适用于我创建的示例工作簿。但不在我要验证的工作簿中。
你能帮帮我吗?
【问题讨论】:
-
能否上传文件并给出链接。
-
cPearson 链接中的函数仅处理某些类型的条件格式(您可以检查 VBA IDE 中的 Imediate 窗口以查看它们是否报告任何错误)。请使用您用于为单元格着色的 CF 的完整详细信息更新您的问题。
-
其实只有一列有公式 =IF(AND(D5=""),"1", IF( OR(AX5:BO5 ),"2",IF(AND(D5""),"3","0")))。而且我不确定其他列是否启用了条件格式。因为 excel 工作簿是由某人创建的,他不可用。我认为这些列是通过数据验证激活的。因为当我删除单元格的内容时,它会自动变为红色。这有帮助吗?