You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets中匹配数组并返回对应中位数的方法求助

Google Sheets 匹配数组值并返回对应列中位数的解决方案

可行公式

直接用BYROW搭配FILTER和MEDIAN实现逐行匹配并计算中位数,公式如下:

=BYROW(B5:B36518, LAMBDA(name, IF(name="", "", IFERROR(MEDIAN(FILTER(B_Sheet!D:D, B_Sheet!B:B=name)), ""))))

原公式失效原因

你之前用的MATCH函数只会返回每个姓名在B_Sheet!B:B中首次出现的行号,因此INDEX只能提取到单个匹配值,MEDIAN计算单个值的中位数就是它本身,根本没法汇总所有匹配的分数,自然得不到正确结果。

效果验证(结合你的示例)

Sheet1中输入公式后:

姓名数组返回中位数
James5
Robert6

对应B_Sheet的数据:

姓名测试分数
James3
Robert4
James5
Robert6
James7
Robert8

公式会自动筛选出每个姓名对应的所有测试分数,计算中位数后返回结果,完美解决VLOOKUP只能取首个匹配值的问题。

内容的提问来源于stack exchange,提问作者MMsmithH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 13:35:20