首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >countif在多个工作表中使用相同范围的单元格

countif在多个工作表中使用相同范围的单元格
EN

Stack Overflow用户
提问于 2016-07-20 11:18:52
回答 2查看 491关注 0票数 1

我的工作簿在每月1、2、3等的每一天都有一个单独的工作表。

在每个工作表上,单元格C8:C34包含可能重复的数字(0-999)。

我想计算一个特定数字出现的总次数,我已经用连续的countif语句来计算了,但这似乎是一个非常冗长和混乱的方法。有没有更简单的方法来实现这一点?

当前代码:

代码语言:javascript
运行
复制
=(COUNTIFS('1'!$C$8:$C$34,C1)+(COUNTIFS('2'!$C$8:$C$34,C1)))
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-20 14:35:30

如果总数量是已知的,那么

代码语言:javascript
运行
复制
=COUNTIF('1'!$C$8:$C$34,C1)+COUNTIF('2'!$C$8:$C$34,C1)+COUNTIF('3'!$C$8:$C$34,C1)

可以替换为

代码语言:javascript
运行
复制
=SUMPRODUCT(COUNTIF(INDIRECT({"1";"2";"3"}&"!$C$8:$C$34"),C1))

{"1";"2";"3"}是一个包含工作表名称的数组文字。SUMPRODUCT将隐式地作为数组公式工作,并将此数组文字依次作为"1";"2";"3“,并将在INDIRECT中使用不同的工作表名称执行3个COUNTIF

如果工作表名称是正在进行的数字,则也可以是:

代码语言:javascript
运行
复制
=SUMPRODUCT(COUNTIF(INDIRECT(ROW($1:$3)&"!$C$8:$C$34"),C2))

在数组上下文中将有{1;2;3}。在与&连接时,数字将被隐式转换为字符串。

票数 2
EN

Stack Overflow用户

发布于 2016-07-20 11:32:24

两个多国?不好,取而代之的是使用数据透视表。

说明:假设您的Excel表单如下所示:

在“插入”选项卡中选择“插入透视表”,在“透视表”字段(右列)中将“标签”放入列中,并将标签放入值中(只需拖放)。将值更改为"Count of Labels“而不是Sum of Labels,这就是故事的结尾。

count if (以及它最好的朋友Sum if)是开销很大的操作,适度使用它们。数据透视表是廉价的,因为它们被优化了。

结果如下所示:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38471743

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档