我在这个帖子中发现了一个名为Range.DisplayFormat.Interior.Color
的属性,它与编程有关。使用此属性,我能够获取有条件格式的单元格的颜色并将其用于其他行。但是,它仅适用于Excel 2010及以上版本。我有Excel 2010,所以它对我有效。
以下是确切的代码 -
For i = rowStart To rowEnd
For j = columnStart To columnEnd
Cells(i, j).Interior.Color = Cells(i, 4).DisplayFormat.Interior.Color
Next
Next
=Sales>25
=Sales>10
=Sales>0
=AND(Sales>0,Sales<=10)
=AND(Sales>10,Sales<=25)
=Sales>25
所有信用归用户Raystafarian所有
我认为我已经找到了解决方案。我可以在行中的所有单元格上实现5度颜色比例,同时只影响包含数据的单元格。
这是通过创建基于以下条件的5个条件格式规则来实现的:
=AND(D4<>"",$D4<>"",($D4-(MIN($D$4:$D$20)-1))/(MAX($D$4:$D$20)-(MIN($D$4:$D$20)-1))*5<=2)
AND
函数中的第一个参数D4<>""
用于仅影响包含数据的单元格,如果要对整行数据进行颜色编码,则删除此参数。
第二个参数$D4<>""
指向包含要评估值的行中的单元格 - 记住使用$
锁定列。
第三个参数$D4-(MIN($D$4:$D$20)-1))/(MAX($D$4:$D$20)-(MIN($D$4:$D$20)-1))*5<=2
评估值在整个值范围内的位置,并将其转换为介于1和5之间的数字,更改此参数末尾的*5
可使您的颜色序列具有更多步骤。您需要相应地添加更多条件规则。 <=2
表示这是序列中的第二个颜色步骤。
颜色3和4使用相同的条件,但将<=2
更改为分别为<=3
和<=4
。
如果您希望范围内的最低数字始终是第一个颜色停止位置,而范围内的最高数字始终是最后一个颜色停止位置,则需要对第一个和最后一个颜色停止位置进行小修改。
对于范围内的最小数字,请按以下方式进行调整:
=AND(D4<>"",$D4<>"",OR($D4=MIN($D$4:$D$20),($D4-(MIN($D$4:$D$20)-1))/(MAX($D$4:$D$20)-(MIN($D$4:$D$20)-1))*5<=1))
OR($D4=MIN($D$4:$D$20)
的介绍捕获了范围内的第一个数字。
同样地,
=AND(D4<>"",$D4<>"",OR($D4=MAX($D$4:$D$20),($D4-(MIN($D$4:$D$20)-1))/(MAX($D$4:$D$20)-(MIN($D$4:$D$20)-1))*5<=5))
使用OR($D4=MAX($D$4:$D$20)
可以捕获范围内的最大数字
请注意,所有条件都必须勾选“停止计算”并且条件必须按照从最小到最大步骤的顺序排序。