20

这是我遇到问题的简单解释。

A 列:2300 个订单号列表
B 列:与订单号关联的电子邮件地址
C 列:我需要其电子邮件地址的 100 个特定订单号列表

因此,我希望在 A 列中搜索与 C 匹配的值,并在新列 (D) 中从 B 列返回电子邮件地址。

当前的公式几乎可以工作,但不是返回 A 匹配 C 的电子邮件地址,而是返回同一行的电子邮件地址。

=IF(ISERROR(MATCH(C2,A:A,0)),B2)    

本质上,我只需要上面公式中的 B2 从匹配的同一行返回值。

4

3 回答 3

50

我认为你想要的是这样的:

=INDEX(B:B,MATCH(C2,A:A,0))  

我应该提到MATCH检查可以在 A:A 中找到值的位置0(给定或 FALSE 参数,它只查找完全匹配并且给定其性质,只找到第一个实例)然后INDEX返回B:B 内该位置的值。

于 2014-10-15T02:16:23.293 回答
3
=IF(ISNA(INDEX(B:B,MATCH(C2,A:A,0))),"",INDEX(B:B,MATCH(C2,A:A,0)))

将返回您想要的答案,并删除#N/A因未出现在查找列表中而无法找到结果时出现的结果。

罗斯

于 2015-09-02T07:52:20.233 回答
2

您所要做的就是在 d 列中编写一个 IF 条件,如下所示:

=IF(A1=C1;B1;" ")

之后,只需将此公式应用于该公式上方的所有行。

于 2014-10-15T02:17:06.730 回答