如何找出满足条件的多行数据中的最后一行
现有Excel文件book1.xlsx,部分数据如下:
日期 | 名称 | 单位 | 件数 | 数量 | 单价 | 金额 |
2020/12/3 | 奇果土橙 | 斤 | 50 | 1267 | 50 | 3420 |
2020/12/3 | 金枕榴莲 | 件 | 15 | 15 | 600 | 9000 |
… | … | … | … | … | … | … |
2020/12/4 | 奇果土橙 | 斤 | 50 | 1320 | 2.7 | 3564 |
2020/12/4 | 车厘子 | 件 | 15 | 15 | 570 | 8550 |
… | … | … | … | … | … | … |
2020/12/4 | 耙耙柑 | 斤 | 15 | 437 | 6 | 2622 |
2020/12/4 | 水仙芒 | 斤 | 5 | 86 | 11 | 946 |
2020/12/4 | 蜜桔 | 斤 | 20 | 754 | 3 | 2262 |
2020/12/5 | 耙耙柑 | 斤 | 15 | 500 | 5.5 | 2750 |
2020/12/5 | 金枕榴莲 | 件 | 5 | 5 | 1020 | 5100 |
2020/12/5 | 口口蜜 | 件 | 30 | 30 | 100 | 3000 |
日期有序,但是每次来货的品种不一定相同,没一定的顺序。并且即使相同的品种,在不同的时间到货价格不一样。
需要显示每个货品最后一次入库到今天为止的天数和最后一次单价,结果如下:
序号 | 名称 | 至今天来货天数 | 最后一次价格 |
1 | 三红柚 | 25 | 2.2 |
2 | 人参果 | 25 | 58 |
3 | 凤梨 | 25 | 75 |
4 | 口口蜜 | 23 | 100 |
5 | 国产蕉 | 24 | 31 |
… | … | … | … |
借助集算器可以很方便地完成这件事。
集算器安装包可去润乾网站下载集算器职场版,运行时需要一个授权,免费版本就够用。
1. 在集算器中编写脚本p1.dfx:
A | |
1 | =file("book1.xlsx").xlsimport@t() |
2 | =A1.group(名称).(~.m(-1)) |
3 | =A2.new(#: 序号, 名称,interval@d( 日期,now()): 至今天来货天数, 单价: 最后一次价格 ) |
A1 读取 book1.xlsx 数据,选项@t表示第一行数据为表头 。
A2 因为日期有序,取每个分组的最后一条记录
A3 计算结果
2. 执行脚本,A3 中的数据是需要的结果。