如何比较两张纸之间的两个值并根据条件

时间:2017-05-05 14:11:49

标签: excel excel-formula

我有两张纸,它们的数据几乎相同,但并非100%相等。

我需要在sheet1上从我的客户端获取CPF(col A)并检查sheet2(col A)是否存在,如果存在,我需要检查来自此客户端的CEP(col k)是否等于CEP( col C)在sheet2上。

我只需要总结一下sheet1上的客户端在文本"成功"。

上的情况。

Sheet 1中

A - CPF | ... | K - CEP | L - STATUS |
   123  | ... |  1234-5 |  Success   | <- Has changed CEP
   124  | ... |  1200-0 |  Success   | <- CEP not changed.
   987  | ... |  0503-7 |  Failed    |

Sheet 2中

A - CPF | ... | C - CEP |
   123  | ... |  1234-0 | <- Original CEP
   124  | ... |  1200-0 | <- Original CEP
   987  | ... |  0503-7 |

预期

SUM:1。

这笔钱用于另一张表。

1 个答案:

答案 0 :(得分:1)

尝试这个公式(任何地方):

=SUMPRODUCT((Sheet1!L:L="success")*(Sheet1!K:K=Sheet2!C:C))

如果设置有限列范围而不是完整列,则可以更快地计算。例如,如果您知道行数不会超过10000,

=SUMPRODUCT((Sheet1!L2:L9999="success")*(Sheet1!K2:K9999=Sheet2!C2:C9999))
  • 一些解释

公式对齐两个布尔矢量。

第一个有1个Sheet1!L:L="success",其他地方为零。

第二个有Sheet1!K:K=Sheet2!C:C,其他地方为零。

然后我们将这两个向量相乘以强制执行两个条件的逻辑AND

最后SUMPRODUCT计算1的数量,从而计算符合所有条件的行数。