为Sunny定制Collusion Report Template之EXCEL技巧之二:SUMIF函数

本博客介绍如何将游戏历史数据导出为Excel文件,并利用Excel公式进行作弊检查数据的统计计算,包括胜率、收入等关键指标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 Sunny的Collusion Team需要BO提供相关的作弊检查信息。基本上就是基于一个可疑的玩家,其它玩家与它对局的相关数据:两人一共一起玩了多少局,一起玩时的胜率,一起玩时的收入等数据。她所希望得到的数据如下图所示:

Collusion Report SRS

这样的需求如果用BO在数据库来做的话,需要递归地做很多查询,性能很不理想。之前我们有试验性的做过尝试,查询的速度很慢。这样我希望通过把 Game History里的数据eport成EXCEL文件的方式,在EXCEL中使用公式来计算(统计)出相应的数据。其实分析这个报表,Sunny想要的数据都是从基础数据中运算或者统计得出来的。而这个基础数据,就是Game History中的数据。

经过一段时间的尝试,这个template做好了,"PlayertoPlayer"这个sheet是结果试问页,"Raw0"是基础数据页,从 Game History报表里Export出来的数据就粘贴到这里;"Raw1"到"Raw5"是复制数据页,它们从"Raw0"页中复制出的数据,同时针对 A53到A56的这四位玩家,分别统计出相应的数据,最后再在"PlayertoPlayer"这个sheet上做汇总。

Finished Collusiont Report Template

好了,有了上面的说明,相信这个报表的需求已经基本清楚了。

现在来说一下这个报表上用到的一个EXCEL函数: SUMIF():

SUMIF Function Example1

如上图所示,对于Combined Income的计算是通过SUMIF函数来实现的。SUMIF函数的语法是:SUMIF( range, criteria, sum_range )。

SUMIF函数的参数说明如下:

第一个参数:range为条件区域,用于条件判断的单元格区域。

第二个参数:criteria是求和条件,由数字、逻辑表达式等组成的判定条件。

第三个参数:sum_range为实际求和区域,也就是需要求和的单元格、区域或引用。

当省略第三个参数的时候,条件区域就是实际求和区域,也就是说条件区域与求和区域是一致的。

criteria参数中可以使用通配符(包括问号(?) 和星号 (*))。问号匹配任意单个字符;星号匹配任意一串字符。如果要查找实际的问号或星号字符,请在该字符前输入波形符(~)。

上面例图中的公式实际上统计sheet Raw1上符合Q这一列的值为1的行中Y这一列对应的值的和。sheet RAW1的数据如下图所示:

RAW1 Sheet Data

可以看得出,Q这一列代表玩家B有没有参加过本行中的游戏;Y这列代表玩家B在本行的游戏中的输赢分。

心得:EXCEL中的SUMIF函数相当于SQL中的SELECT语句带SUM函数的用法:

SELECT SUM(sum_range) from Sheet 
	WHERE range = criteria;

其中Sheet代表EXCEL中的datasheet;range, criteria和sum_range分别代表SUMIF函数中的第一个,第二个和第三个参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值