怎样统计EXCEL中相同项目的总和

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样统计EXCEL中相同项目的总和相关的知识,希望对你有一定的参考价值。

可以使用excel中的“合并计算”进行相同项目的求和。


操作步骤:

1、鼠标定位到要展示“项目汇总求和”结果的首个单元格。

2、选择“数据选项卡”的“合并计算”,弹出“合并计算”窗口,函数处选择“求和”,鼠标定位到引用位置,选择要统计的数据区域,然后点“添加”,勾选“首行”、“最左列”,点击“确定”。

注意:要统计的的项目必须在首列。

3、把学生A、B、C及显示成绩的位置一起选中作为结果展示的区域,然后点击“数据选项卡”下的“合并计算”,引用位置选择统计的区域,勾选最左列、首行,确定。

4、如果需要多个表格的相同项目合并统计,则我们可以添加一个一个区域逐个选中后按添加。


参考技术A

使用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中相同项目的总和的主要内容,如果未能解决你的问题,请参考以下文章

excel怎么统计某个数据出现次数

excel 统计模板

excel表格怎样设置统计数据所占百分比

EXCEL整张表如何统计词语出现多少次

excel怎么统计指定组合出现次数?

excel如何计算一列数字的总和?