根据单元格值更改行颜色-如果值相同,则应用相同的单元格值

时间:2019-05-12 19:50:14

标签: excel colors cell conditional-formatting

在Excel中:

我有一份已订购的物品清单。 在第一列的开头,我有订单号。此数字由供应商名称+我下订单的日期(例如Supplier1.17-05-19Supplier2.17-05-19Supplier.23-5-19)组成

我想根据不同的像元值来替换像元颜色。订单号为Supplier1.17-05-19的所有项目应具有白色背景色,订单号为Supplier2.17-05-19的所有项目应具有灰色背景色,依此类推。

每当我添加新商品时(因为添加了新订单),我希望这些商品具有相同的背景色,但与之前下达的订货号不同。

我已经尝试了使用条件格式提出的所有可能的解决方案,但是没有任何效果。

每当我添加新商品时(因为添加了新订单),我希望这些商品具有相同的背景色,但与之前下达的订货号不同。

示例:

-Supplier1.17-05-19 - White Background Colour
-Supplier1.17-05-19 - White Background Colour
-Supplier1.17-05-19 - White Background Colour
-Supplier2.17-05-19 - Grey Background Colour
-Supplier2.17-05-19 - Grey Background Colour
-Supplier2.23-05-19 - White Background Colour
-Supplier2.23-05-19 - White Background Colour
-Supplier3.23-05-19 - Grey Background Colour
-Supplier3.23-05-19 - Grey Background Colour
-Supplier3.23-05-19 - Grey Background Colour
-Supplier3.23-05-19 - Grey Background Colour

1 个答案:

答案 0 :(得分:0)

方法1

比较当前单元格和上一个单元格。

如果不同,并且先前的单元格尚未格式化,则将其涂成灰色。

如果相同且之前的单元格已经格式化,则将当前单元格设置为灰色。

不幸的是,这无法使用工作表函数(例如CELL)完成,因为它无法识别条件格式。

方法2

从列开始算起唯一值的数量,并测试它是否为奇数或偶数。使用Countunique函数在Google表格中很容易做到这一点,但是在Excel中,您需要这样的东西:

=ISEVEN(SUM(--(FREQUENCY(MATCH(A$2:A2,A$2:A2,0),MATCH(A$2:A2,A$2:A2,0))>0)))

这确实适用于测试数据,但是如果在另一个订单号之后再次出现相同的订单号(即未将它们分类为块),则失败。

enter image description here

enter image description here

方法3

计算数据的转数,即订单号更改到当前行的次数,并查看其是否为奇数或偶数。到目前为止,我看不到任何错误:

=ISEVEN(SUMPRODUCT(--(A$1:A1<>A$2:A2)))

enter image description here

enter image description here