首页 > 解决方案 > 如何获得两张纸之间连续不匹配单元格的数量?

问题描述

我有两张表,表 A 包含一个像这样的真值表:

    A B C D E
Foo T F F T F
Bar T F F F F

表 B 包含另一个表:

A B C D E
T F F T F

我需要在表 A 中添加一列,计算有多少单元格与工作表 B 中的相应单元格匹配,如下所示:

Foo T F F T F 2
Bar T F F F F 1

我能想到的最好的第一个计数单元是

=COUNTIF(B2:F2,B2:F2=INDIRECT("sheet-b!A2:E2"))

但这给了我0即使它应该是 2。

编辑: 我能够想出这个,它正确地计算了不同单元格的数量:

=SUM(ARRAYFORMULA(IF(B2:F2=INDIRECT("sheet-b!A2:E2"),1,0)))

我想要的下一件事是添加一个 AND 语句,并计算单元格是否匹配或sheet-b单元格是否为 F:

=SUM(ARRAYFORMULA(IF(AND("F"=INDIRECT("sheet-b!A2:E2"),B5:F5=INDIRECT("sheet-b!A2:E2")),1,0)))

但是,我似乎无法在此公式中使用 AND 语句。甚至以下给出的总和为零:

=SUM(ARRAYFORMULA(IF(AND(TRUE,B2:F2=INDIRECT("sheet-b!A2:E2")),1,0)))

怎么来的?

Edit2链接到示例电子表格

标签: if-statementgoogle-sheetsgoogle-sheets-formulaarray-formulasgoogle-sheets-query

解决方案


如何获得两张纸之间连续不匹配的单元格的数量

 =ARRAYFORMULA(IF(LEN(A2:A), 
 MMULT(IF(B2:F='sheet-b'!A2:E2, 0, 1), TRANSPOSE(COLUMN(B2:F2)^0)), ))

0


推荐阅读