【发布时间】:2018-05-31 08:38:41
【问题描述】:
我有需要按“类型”而非实例计数的电子表格数据字符串。
A B C D
1 Lin 1 2 1
2 Tom 1 4 2
3 Sue 3 1 4
分配给老师 1 的学生的正确总数是 3,而不是 4。老师 1 在 B 课和 D 课中遇到 Lin 与计数无关。
我借用了一个公式,该公式适用于 Excel,但不适用于我和其他人需要保存和操作数据的 Google 表格。
F5=SUMPRODUCT(SIGN(COUNTIF(OFFSET(B$2:D$2, ROW($2:$4)-1, 0), E5)))
A B C D E
2 Lin 1 2 1
3 Tom 1 4 2
4 Sue 3 1 4
5 1 [exact string being searched for, ie a teacher name]
我不知道 Google 表格在该公式中没有理解什么。有谁知道要使用的正确表达式,或更有效的方法来获得我需要的准确计数,而行内没有重复会使计数膨胀?
【问题讨论】:
-
请描述您提供的示例中的行和列的含义。
-
每一行是对一名学生的教学支持记录。每列 B、C 和 D 可能包含也可能不包含作为教师姓名的字符串。单元格 B1 和 D1 都包含老师的姓名,例如 Smith。林在两个不同的课程中得到史密斯的支持,但我需要计算史密斯支持林、汤姆和苏 = 3 名学生。
-
我会
CONCATENATE行并使用FIND和IF和ISERROR,为每一行获取0或1- 比如=IF(ISERROR(FIND($A$1,CONCAT(A3:D3))),0,1)- 然后可能把它变成一个数组公式。 -
sumproduct 是错误的。偏移量应该使用 ROW($1:$3)-1 或 ROW($2:$4)-2,而不是 ROW($2:$4)-1。
-
我认为偏移量不会以您想要的方式在 Google 表格中发挥作用。 Mmult 应该同时适用于两者,或者可能有一种特定的谷歌表格方式可能使用拆分/连接/转置 - 不幸的是,它们没有你希望的那么简单。
标签: excel google-sheets row countif