如何实现相邻行满足特定条件时分组汇总

现有excel 文件 book1.xlsx,数据如下:

051000

55.74

055000

61.47



056000

44.53



062000

142.11



081000

142.11

088000

44.53



092000

52.89



095100

118.37

096500

354.8



096700

6.49

099100

44.53



102600

162.74

需要按第一列分组,对第二列的数值求和。分组条件为: 如果本条不为空,且上一条为空,且上上条和本条的前两位数字不同,则分新一组。计算结果如下:

051000

161.74

062000

142.11

081000

186.64

092000

577.08

102600

162.74

借助集算器可以很方便地完成这件事。
集算器安装包可去
润乾网站下载集算器职场版,运行时需要一个授权,免费版本就够用。

1.     在集算器中编写脚本 groups.dfx:


A

1

=file("book1.xlsx").xlsimport()

2

=A1.group@i(if(#1 && #1[-1]==null && left(#1,2)!=left(#1[-2],2)))

3

=A2.new(#1:section,round(~.sum(#2),2):amount)

 A1   读取 book1.xlsx 数据

A2   按条件(本条不为空,且上一条为空,且上上条和本条的前两位数字不同)分组

A3   计算每个分组内第二列数值的和,section 为每组第一列的第一个值

2.     执行脚本,A3 是需要计算出的结果。