我有一个电子表格来记录有缺陷的物品。每件物品都记录在单独的行中,每件物品都有一个“可用?”列。示例行如下所示:
Item | Usable?
---------------
1 Item1 | Yes
2 Item2 | No
3 Item3 | Unknown
4 Item4 | No
“可用?”列中每个单元格都有一个下拉菜单,用于将其状态设置为“是”、“否”或“未知”,我使用 COUNTIF() 函数来计算每种状态的总数。我希望在最后一行,即最后一个记录项之后立即进行计数,即:
Item | Usable?
---------------
1 Item1 | Yes
2 Item2 | No
3 Item3 | Unknown
4 Item4 | No
---------------
5 Total Yes: | 1
6 Total No: | 2
7 Total Unknown: | 1
问题是 COUNTIF() 采用一组预定义的单元格,当我添加新行时,除非我修改函数,否则 COUNTIF() 不会将新单元格纳入计数。
有没有办法让 COUNTIF() 包含新数据而无需我修改函数?
答案1
您可以使用:
=COUNTIF($B$2:INDIRECT("$B"&ROW()-1),INDIRECT("$A"&ROW()))
在最后一行(您要计算的行,您可以在不更改公式的情况下更改它)中写入状态,
在状态旁边的第二列中写入上述公式。B
列是状态(是、否、未知)
A 列是项目
如果你想写:
Total Yes 2
Total No 2
Total Unknown 1
您可以在下方直接使用:
=COUNTIF($B$2:INDIRECT("$B"&ROW()-1),"Yes")
是旁边否
=COUNTIF($B$2:INDIRECT("$B"&ROW()-2),"No")
旁边未知
=COUNTIF($B$2:INDIRECT("$B"&ROW()-3),"Unknown")
旁边
无论你插入什么行,它都会被计算,即使你选择“总计是”并插入一行
答案2
选项 1:引用整个列
缺点是您必须将总数放在不同的列或表中。
=COUNTIF(B:B,"Yes")
选项 2:总计上方的空白行
在某个范围内插入一行会扩大该范围。通过在公式中包含空白行,Excel 会自动将新范围添加到总计中。
只需确保插入空白行而不是总计行即可。
A B
---------------
1 Item1 | Yes
2 Item2 | No
3 Item3 | Yes
4
5 TotYes | =COUNTIF(B1:B4,"Yes")
右击第 4 行标题,点击“插入”。您会注意到公式COUNTIF
将变成B1:B5
。