怎样统计EXCEL中相同项目的总和
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样统计EXCEL中相同项目的总和相关的知识,希望对你有一定的参考价值。
可以使用excel中的“合并计算”进行相同项目的求和。
操作步骤:
1、鼠标定位到要展示“项目汇总求和”结果的首个单元格。
2、选择“数据选项卡”的“合并计算”,弹出“合并计算”窗口,函数处选择“求和”,鼠标定位到引用位置,选择要统计的数据区域,然后点“添加”,勾选“首行”、“最左列”,点击“确定”。
注意:要统计的的项目必须在首列。
3、把学生A、B、C及显示成绩的位置一起选中作为结果展示的区域,然后点击“数据选项卡”下的“合并计算”,引用位置选择统计的区域,勾选最左列、首行,确定。
4、如果需要多个表格的相同项目合并统计,则我们可以添加一个一个区域逐个选中后按添加。
使用sumif函数,多条件用sumifs=sumif(名字的区域,“=名字”,数据所在区域)。
笔数可以使用COUTIFS多条件求个数函数;
在C4单元格输入公式:
=sumifs(Sheet2!$f$4:$f10,Sheet2!$b$4:$b$10,b4,Sheet2!$e$4:$e$10,indirect(“A”&(rounddown(row(A5)/5,)-1)*4+3+round(row(a3)/5,)))
在D4单元格输入公式:
=countifs(Sheet2!$b$4:$b$10,b4,Sheet2!$e$4:$e$10,indirect(“A”&(rounddown(row(A5)/5,)-1)*4+3+round(row(a3)/5,)))
将所有公式向下填充即可。
扩展资料:
当需要分析数据清单中的数值是否符合特定条件时,可以使用数据库工作表函数。
例如,在一个包含销售信息的数据清单中,可以计算出所有销售数值大于 1000 且小于 2500 的行或记录的总数。Microsoft Excel 共有 12 个工作表函数用于对存储在数据清单或数据库中的数据进行分析,这些函数的统一名称为Dfunctions,也称为 D 函数,每个函数均有三个相同的参数:database、field和criteria。
这些参数指向数据库函数所使用的工作表区域。其中参数database为工作表上包含数据清单的区域。参数field为需要汇总的列的标志。参数criteria为工作表上包含指定条件的区域。
参考资料来源:百度百科-excel函数
参考技术B 1.用数据透视表2.按品种列排序,用分类汇总
3.选中A列 数据 筛选 高级筛选
勾选 选择不重复的记录
将结果复制到E2
在F2中输入或复制粘贴此公式
=SUMIF(A:A,E2,B:B)
下拉填充本回答被提问者和网友采纳 参考技术C 建议你还是用数据透视表方法会简单些。 参考技术D 在F2录入:然后下拉向下复制
=sunfi($A$2:$A$20,$E2,$B$2:$B$20)
查询获取映射到相同代码的两个不同项目的总和
【中文标题】查询获取映射到相同代码的两个不同项目的总和【英文标题】:query to Get sum of two different items that is mapped onto same code 【发布时间】:2021-07-22 09:27:51 【问题描述】:我有这张房间的库存表:
dtm | hotelid | roomcode | intqty |
---|---|---|---|
2000-01-04 | 23 | svr | 9 |
2000-01-04 | 23 | ovb | 9 |
这是我的映射表:
hotelid | roomcode1 | roomcode2 | externalroom |
---|---|---|---|
23 | svr | ovb | 023 |
我正在尝试在上面的库存表中获取同一日期两个房间的 intqty 总和: 这是我到目前为止所拥有的:
select
a.dtm as InvDate,
a.intResortID as ResortId,
a.strRoomType as RoomType,
sUM(a.intQty) as InvCount,
am.externalRoomId
from
dbo.tblAvailable c
join dbo.tblAvailable a on a.dtm = c.dtm
and a.intResortID = c.intResortID
and a.strRoomType = c.strRoomType
join dbo.tblResorts r on r.intResortID = a.intResortID
join bbtest.externalResortMap arm on arm.ResortID = a.intResortID
join bbtest.externalRoomMap am on am.RoomId = a.strRoomType
group by
a.dtm,
a.intResortID,
a.strRoomType,
a.intQty,
am.externalRoomId
order by
invDate;
预期结果是:
Invdate | ResortId | RoomType | InvCount | externalRoomId |
---|---|---|---|---|
2000-01-04 | 23 | svr | 18 | 023 |
查询输出:
Invdate | ResortId | RoomType | InvCount | externalRoomId |
---|---|---|---|---|
2000-01-04 | 23 | svr | 9 | 023 |
2000-01-04 | 23 | ovb | 9 | 023 |
【问题讨论】:
预期结果是什么? 映射表的名称是什么?你的房间桌子是哪一张? 我已经添加了预期的结果@Squirrel 映射表名是bbtest.externalRoomMap @eshirvana主表是第一个tblAvailable 你为什么要自己加入tblAvailable
?
【参考方案1】:
不知道你为什么要加入 tblAvailable 两次,但如果我没有犯任何错误,这就是你需要做的:
select
a.dtm as InvDate,
a.intResortID as ResortId,
am.RoomId_1 as RoomType,
sum(a.intQty) as InvCount,
am.externalRoomId
from
dbo.tblAvailable a
join dbo.tblResorts r on r.intResortID = a.intResortID
join bbtest.externalResortMap arm on arm.ResortID = a.intResortID
join bbtest.externalRoomMap am
on a.strRoomType in (am.RoomId_1 ,am.RoomId_2)
group by
a.dtm,
a.intResortID,
am.RoomId_1,
am.externalRoomId
order by
invDate;
【讨论】:
感谢它所做的是,如果 am.RoomId_2 InvCount 也可以添加到 am.RoomId_1 InvCount 中,它会在最终结果中获得 am.RoomId_2 @steifmaster 可能缺少类似 hotelid 的条件,( ... and a.hotelid = am.hotelid ) ,显示我的查询输出 我在问题标题的底部添加了输出:查询输出:@eshirvana 哦,好的,将 strRoomType 替换为 RoomId_1 应该没问题,请参阅更新的 asnwer 似乎您也不需要加入 bbtest.externalResortMap ,我不确定它是否有任何过滤目的。如果没有,您可以删除该加入以上是关于怎样统计EXCEL中相同项目的总和的主要内容,如果未能解决你的问题,请参考以下文章