Excel:如果此单元格=值,则使用匹配ID格式化所有行

Excel:如果此单元格=值,则使用匹配ID格式化所有行,excel,conditional-formatting,Excel,Conditional Formatting,假设我有如下数据: ID Action 3 G 1 D 2 X 1 P 3 E 2 M 3 B 在“操作”列中输入B时,我希望找到与输入B的行具有相同ID的所有行。在上面的示例中,我在最后一行输入了B,因此我希望选择ID为3的所有行,以匹配输入B的行的ID。然后我想格式化这些行,例如更改文本颜色。在这种情况下,将格式化以下行: 3 G 3 E 3 B 我还可能在将来的任何时候更改Action列中的值,例如,如果我在上面的示例中将X更改为B,则ID为2

假设我有如下数据:

ID  Action
3   G
1   D
2   X
1   P
3   E
2   M
3   B
在“操作”列中输入B时,我希望找到与输入B的行具有相同ID的所有行。在上面的示例中,我在最后一行输入了B,因此我希望选择ID为3的所有行,以匹配输入B的行的ID。然后我想格式化这些行,例如更改文本颜色。在这种情况下,将格式化以下行:

3   G
3   E
3   B
我还可能在将来的任何时候更改Action列中的值,例如,如果我在上面的示例中将X更改为B,则ID为2的所有行都将受到影响:

2   B
2   M
ID为3的现有行将保留其格式,因为ID为3的其中一行在“操作”列中有一个B

在上面的示例中,ID为1的行不受影响,因为它们在Action列中都没有B


这可能吗?

尝试以下条件格式公式规则:

=$A1=INDEX($A:$A,MATCH("B",$B:$B,0))  

with Applies to of=$A:$H或更改H以适应。

使用基于公式的格式的条件格式。公式应该是带有匹配项的B use索引位置旁边的ID与正在格式化的单元格中的值之间的比较。比如:

=IFcell\u value=INDEXID\u范围,MATCHB,Action\u范围,0,0,TRUE,FALSE


如果返回true,请根据需要设置格式,然后使用条件格式管理器将“公式”扩展到整个范围。

My如果您使用VBA创建用户定义函数,则可能实现。您的问题中有许多不清楚的地方,例如,您认为输入数据的位置在哪里?在任何一行中输入a B。是@pnuts,所有具有匹配ID的行都应该格式化。@Fumu7,通常“操作”将是空行上的新条目,但我可能希望通过将例如“X”更改为“B”来更改上面现有行中的“Action”。然后我想格式化所有与我刚刚修改的行ID相同的行。我是一名程序员,但不懂VBA,因此一个如何创建和使用VBA的快速示例可能会有所帮助。@pnuts,我刚刚意识到;我的意思是在任何一行的“操作列”中输入一个“B”。当您将X更改为B时,您期望得到什么?第三个数据中B对应的ID为2,第七个数据中B对应的ID为3。更改第一、第三、第五、第六和第七行的格式是您想要的吗??你应该更清楚、更准确地解释你的问题。通过对我的具体工作表进行一些调整,这回答了我的问题。我的实际公式是:=$A2=索引$A2:$A500,MATCHDIS,$C2:$C500,0对,你是PNUT,我只是想让大家明白这个公式是如何工作的。