gpt4 book ai didi

excel - 匹配和标记excel中重复的内容

转载 作者:行者123 更新时间:2023-12-04 21:33:45 25 4
gpt4 key购买 nike

我在excel中有两个表

第一个表有带有 id 的产品列表

product_id   |  package_size   | package_name
1 | 40 | product 1
2 | 100 | product 2
2 | 100 | product 2
2 | 50 | product 2
3 | 100 | product 3
3 | 100 | product 3

第二个表有两列:
product_id   |  multiple_package_size
1 | multiple_package_size
2 | multiple_package_size
3 | multiple_package_size

我期望在第二张 table 上返回的是:
product_id   |  multiple_package_size
1 |
2 | x
3 |

现在我的 multiple_package_size 列是空的,我试图在每个具有多个包装大小的产品 id 上放置一个 x。我一直在使用 INDEX MATCH,但它并没有标记每个具有多个包装尺寸的产品。
这是我现在在 multiple_package_size 列中的公式:
=if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,0)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,1)),if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,1)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,2)),if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,2)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,3)),if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,3)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,4)),if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,4)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,5)),if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,5)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,6)),if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,6)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,7)),if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,7)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,8)),if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,8)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,9)),,"x"),"x"),"x"),"x"),"x"),"x"),"x"),"x"),"x")

为了便于阅读:
=if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,0)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,1)),
if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,1)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,2)),
if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,2)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,3)),
if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,3)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,4)),
if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,4)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,5)),
if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,5)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,6)),
if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,6)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,7)),
if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,7)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,8)),
if(INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,8)) = INDEX(Sheet3!$E$1:$E$89999,MATCH(A29,Sheet3!$A$1:$A$89999,9)),
,"x")
,"x")
,"x")
,"x")
,"x")
,"x")
,"x")
,"x")
,"x")

我究竟做错了什么?有一个更好的方法吗?

最佳答案

您需要通过 COUNTIF 进行检查

=IF(COUNTIF(Sheet3!$A$1:$A$89999,A29) > 1, "x", "")

What am I doing wrong?



可能误解了 MATCH的第三个参数|功能。

如果第一个表有重复的行,这在你的第一个问题中是不可见的,那就有点复杂了:
=IF(AGGREGATE(14,6,Sheet3!$I$1:$I$89999/(Sheet3!$A$1:$A$89999=A29),1)<>
AGGREGATE(15,6,Sheet3!$I$1:$I$89999/(Sheet3!$A$1:$A$89999=A29),1),"x", "")

基本上,它比较匹配产品 ID 的最大和最小包装尺寸,如果它们不同,则标记为“x”。

p.s.我不完全确定这些列是否与您的数据完全对应我只是试图从您的公式中猜测它们。我假设产品 ID 是 sheet3 column A,包装大小是 sheet3 column I,搜索的值是 A29。如果需要,调整它们。

p.s.2 如果可以的话,我认为您应该考虑简单地从数据中删除重复项。

关于excel - 匹配和标记excel中重复的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44825150/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com