Excel函数应用:如何按最大版本号筛选行
解决方案
要实现每个项目仅返回最新版本行,核心是先定位每个Item #对应的最大Version #,再筛选出匹配的行。以下是两种适用于Excel 365/2021的动态数组公式:
方法1:使用MAXIFS + FILTER
=FILTER(Table2, Table2[Version #] = MAXIFS(Table2[Version #], Table2[Item #], Table2[Item #]))
- 逻辑:
MAXIFS为每一行计算对应Item #的最大版本号,FILTER仅保留版本号等于该最大值的行,直接得到每个项目的最新版本记录。
方法2:使用GROUPBY(Excel 365最新版本支持)
=GROUPBY(Table2[Item #], Table2, LAMBDA(x, TAKE(x, -1)), 0, 0)
- 逻辑:按
Item #分组,对每组数据取最后一行(若数据按版本升序排列,最后一行即为最新版本);若数据排序不确定,可先对Table2按Item #和Version #升序排序后再使用该公式。
原始数据示例
| Item # | Version # | Progress % |
|---|---|---|
| 1 | 1 | 100% |
| 2 | 1 | 100% |
| 2 | 2 | 80% |
| 3 | 1 | 100% |
| 3 | 2 | 100% |
| 3 | 3 | 90% |
| 4 | 1 | 100% |
| 5 | 1 | 100% |
| 5 | 2 | 80% |
| 6 | 3 | 100% |
期望输出
| Item # | Version # | Progress % |
|---|---|---|
| 1 | 1 | 100% |
| 2 | 2 | 80% |
| 3 | 3 | 90% |
| 4 | 1 | 100% |
| 5 | 2 | 80% |
| 6 | 3 | 100% |
内容的提问来源于stack exchange,提问作者Jmar
相关产品推荐
相关产品推荐

