函数名:ETSamePrevious

功能:

函数功能为提取数据的前N条记录数据,该函数最常应用的场合就是获取数据TOP N 问题。通常配合SORT排序函数使用。


参数:

dataRange:第一个参数,待提取的数据区域,该函数可以为Excel选区,也可以为其他函数返回结果数组;

sameColumns:第二个参数,数据分组列,函数将提取每个分组前N条记录,需要注意如果存在多列,可以使用数组数据,例如{1,2}表示函数将按第一和第二列进行分组,提取每个分组前N条记录;

pre_number:第三个参数,前N条记录;

样例演示

下图样例数据,希望提取每个班组前N条记录,使用ETSamePrevious函数,函数第一个参数选择整个选区,第二个参数分组列,这里选择班组所在列,第二列,第三个参数设置为“3”表示提取前三条记录。

EFunction插件教程:提取前N条数据ETSamePrevious使用技巧教程
前N条记录

演示案例数据完整公式如下

演示案例完整公式:=ETSamePrevious(A2:H11,2,3)

上述案例,01班有多个人信息,函数只保留了前3条记录,其他班组,因为总人数不足3条,这些班组所有人记录均被保留。

利用该函数,可以实现例如获取到每个班组工资最高的3个人信息。这时可以使用SORT排序函数,先将工资降序排序,然后再使用该函数提取前N条记录。排序函数可以使用SORT函数(EFunction工具里使用EFSort排序函数)。

EFunction插件教程:提取前N条数据ETSamePrevious使用技巧教程
排序函数

演示案例数据完整公式如下

演示案例完整公式:=ETSamePrevious(SORT(A2:H11,{2,4},{1,-1}),2,3)

注意事项:

  • 该函数结果为数组数据,365 Excel支持动态数组可以显示所有数据,低版本Excel使用数组公式后(ctrl shift enter 组合键)使用EFunction菜单功能重构数组;
  • 函数第一个参数选择排序区域,请勿整行或者整列引用;
  • 该函数最常应用场合,配合SORT排序函数,提取TOP N问题;

EFunction插件教程:提取前N条数据ETSamePrevious使用技巧教程

相关新闻

QQ
QQ
关注微信
关注微信
返回顶部