如何检查 Excel 中两个单元格是否具有相同的行?

如何检查 Excel 中两个单元格是否具有相同的行?

我正在处理一个从电子表格中获取数据的大型文件。我需要匹配商店编号和商店名称并返回正确的地址。这很容易,但很多商店编号重复,所以我不能只匹配商店编号。我还必须匹配商店名称。示例数据:

Store Name         Store Number     Address
Kroger - Dallas    333              358 Street
Kroger - Dallas    450              123 Street
Kroger - Delta     450              453 Street
Kroger - Atlanta   450              648 Street
Kroger - Atlanta   258              284 Street
HEB                450              349 Street

如果商店编号匹配,我已经知道如何返回地址,但这些商店的商店编号有时会相互冲突。与 Sam's Clubs 合作时,这很容易,因为没有商店编号相互冲突,因此所有数据都会完美返回。

我首先尝试检查名称是否包含“达拉斯”或“亚特兰大”等,然后检查与该名称相关的商店编号,并返回地址。

这是我正在尝试的公式,但它说有错误。其中 D3 是包含商店名称和商店编号的单元格。

 =IF(SEARCH("Kroger", $D$3), IF(ROW(SEARCH("Dallas", D3))=ROW(MATCH(INT(RIGHT(D3, LEN(D3)-FIND("#", D3))), B2:B985)), "Match!", "No Match."), IF(RIGHT($D$3,1)="#","Enter a Valid Store Number", INDEX(Locations!$C$2:$C$985,MATCH(INT(RIGHT($D$3,LEN($D$3)-FIND("#",$D$3))),Locations!$B$2:$B$985,0),)))

如果我用这个替换 IF(ROW()=ROW()):

IF(ROW(D3)=ROW(D3), "Match!", "No Match.")

它有效,所以我知道错误不在公式的其余部分。

答案1

根据您提供的示例数据,我假设商店名称和商店编号是单独的字段,您只需在新电子表格中匹配相同的字段即可返回地址。

提供的公式表明其格式可能不一致或不相同。

如果两个电子表格中的数据格式相同,则 INDEX MATCH 公式应该可以正常工作。

下面的数组公式将 E 列和 F 中的值与 A 列和 B 列中的相应值进行匹配,然后返回 C 中的相应值。

这是一个数组公式,因此您需要使用以下方式输入CTRL + SHIFT + ENTER

=INDEX(C:C|MATCH(E1&F1|A:A&B:B|0))

在此处输入图片描述

答案2

您可以使用此公式,其中 D 是商店名称的列,您可以将其向下拖动到每个名称,它将为您提供匹配的地址,
=IFERROR(IF(AND(FIND("Kroger",D3,1)>0,FIND("Dallas",D3,1)>0),OFFSET(D3,0,2),""),"")
但如果您需要使用一个公式一次搜索所有商店名称,则需要不同的公式。
另一个公式是通过使用 MATCH 和 OFFSET 组合商店名称和商店编号,A:A 和 B:B 是您的信息数组(商店名称和商店编号),使用匹配,您将获得带有偏移量的行,您将获得以 A1 为起始参考的地址,其中是标题商店名称。
=OFFSET(A1,MATCH("Kroger - Dallas"&"450",A:A&B:B,0)-1,2)
使用CTRL + SHIFT + ENTER它是一个数组公式

相关内容