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

Excel 根据单元格值更改行颜色-如果值相同,则应用相同的单元格值,excel,colors,cell,conditional-formatting,Excel,Colors,Cell,Conditional Formatting,在Excel中: 我有一份我订购的物品清单。 在第一列的开头,我有订单号。此编号由供应商名称+我下订单的日期组成(例如供应商1.17-05-19或供应商2.17-05-19或供应商23-5-19) 我想根据不同的单元格值选择单元格颜色。订单号为Supplier1.17-05-19的所有项目应为白色背景色,订单号为Supplier2.17-05-19的所有项目应为灰色背景色,依此类推 每当我因为添加新订单而添加新项目时,我希望这些项目具有相同的背景颜色,但与我之前下的订单号不同 我已经尝试了所有可

在Excel中:

我有一份我订购的物品清单。 在第一列的开头,我有订单号。此编号由供应商名称+我下订单的日期组成(例如
供应商1.17-05-19
供应商2.17-05-19
供应商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

将当前单元格与上一单元格进行比较

如果不同且上一个单元格尚未格式化,请将其涂成灰色

如果同一单元格和上一单元格已经格式化,则将当前单元格涂成灰色

不幸的是,这不能用像CELL这样的工作表函数来完成,因为它不能识别条件格式

方法2

从列的开头开始计算唯一值的数量,并测试其是否为奇数或偶数。在具有Countunique功能的Google Sheets中,这很容易做到,但在Excel中,您需要以下内容:

=ISEVEN(SUM(--(FREQUENCY(MATCH(A$2:A2,A$2:A2,0),MATCH(A$2:A2,A$2:A2,0))>0)))
这确实适用于测试数据,但如果相同的订单号在另一个订单号之后再次出现(即,它们未被排序为块),则失败

方法3

计算数据中的圈数,即订单号更改到当前行的次数,并查看是奇数还是偶数。到目前为止,我看不出这个有什么问题:

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


方法1

将当前单元格与上一单元格进行比较

如果不同且上一个单元格尚未格式化,请将其涂成灰色

如果同一单元格和上一单元格已经格式化,则将当前单元格涂成灰色

不幸的是,这不能用像CELL这样的工作表函数来完成,因为它不能识别条件格式

方法2

从列的开头开始计算唯一值的数量,并测试其是否为奇数或偶数。在具有Countunique功能的Google Sheets中,这很容易做到,但在Excel中,您需要以下内容:

=ISEVEN(SUM(--(FREQUENCY(MATCH(A$2:A2,A$2:A2,0),MATCH(A$2:A2,A$2:A2,0))>0)))
这确实适用于测试数据,但如果相同的订单号在另一个订单号之后再次出现(即,它们未被排序为块),则失败

方法3

计算数据中的圈数,即订单号更改到当前行的次数,并查看是奇数还是偶数。到目前为止,我看不出这个有什么问题:

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


为什么供应商2是白色和灰色的?供应商1仅为白色,供应商3仅为灰色?嗨,迈克,谢谢你的提问。这很简单,因为无论订单号何时更改,颜色都会交替。编辑现在可以清楚地显示出来…我有几种方法可以做到这一点-今天晚些时候我会回答。为什么供应商2是白色和灰色的?供应商1仅为白色,供应商3仅为灰色?嗨,迈克,谢谢你的提问。这很简单,因为无论订单号何时更改,颜色都在交替。编辑现在清楚地显示了这一点…我有几种方法可以做到这一点-今天晚些时候我有时间时会回答。亲爱的汤姆,首先非常感谢你!!这太疯狂了!不幸的是,我没有完全解决这个问题。我正在使用你的射击方法,但它不能完全发挥作用。你能解释一下这个公式是怎么回事吗?Ivyline.03-05-19 Ivyline.03-05-19 Ivyline.03-05-19 Ivyline.03-05-19 Decco.08-05-2019 Ferm Living.03-05-2019 Ferm Living.03-05-2019陶壶.08-05-2019陶壶.08-05-2019亲爱的Tom,首先非常感谢!!这太疯狂了!不幸的是,我没有完全解决这个问题。我正在使用你的第三种方法,但它并不完全有效。每个区块的最后一个和第一个条目的颜色都不正确。你能解释一下这个公式是怎么回事吗?我渴望学习。Sumproduct后面的“-”是什么?这部分“A$1:A1A$2:A2”在做什么?再次感谢,我非常感谢你的帮助。我现在还没有拿到试卷,所以我无法完全回答你的问题,但需要注意的是:(1)公式中的范围必须与你正在格式化的范围相匹配,因此如果它从第10行开始(比如),你必须将它改为a$9:A9A$10:A10(2)--将比较结果(真或假)更改为一个数字,以便sumproduct可以将其相加(3)$A1:A1A$2:A2将范围内的每个单元格与前一个单元格进行比较,因此整个sumproduct的结果是当前单元格与前一个单元格不相等的次数。亲爱的Tom,首先,非常感谢!!这太疯狂了!不幸的是,我没有完全解决这个问题。我正在使用你的射击方法,但它不能完全发挥作用。你能解释一下这个公式是怎么回事吗?Ivyline.03-05-19 Ivyline.03-05-19 Ivyline.03-05-19 Ivyline.03-05-19 Decco.08-05-2019 Ferm Living.03-05-2019 Ferm Living.03-05-2019陶壶.08-05-2019陶壶.08-05-2019亲爱的Tom,首先非常感谢!!这太疯狂了!不幸的是,我没有完全解决这个问题。我使用的是你的第三种方法,但它并没有满