Google Sheets跨表按选定站点与类型匹配取最新日期公式求助
Google Sheets 按站点+类型匹配最新日期公式方案
场景与问题
- 表格结构:包含2个工作表
- 展示页工作表:提供站点选择下拉框,同时展示所有类型列表
- DATA工作表:存储全量数据,字段包含日期、年、月、周,以及和类型绑定的站点信息
- 需求:在展示页根据选中的站点,自动匹配每个类型对应的最新日期
- 原有公式问题:编写的
=IF((AND(C1=DATA!F:F),(B3=DATA!E:E)),LARGE(DATA!A:A),"")无法返回正确结果
原有公式错误点
- 整列传入
AND做判断时,不会逐行校验两个匹配条件,仅会返回单布尔值,无法定位同时满足站点、类型匹配要求的行 LARGE函数缺少排名参数,且未对日期做条件过滤,会直接返回全表最大日期,和筛选要求无关- 没有建立条件和日期列的逐行映射关系,无法实现双条件匹配筛选
可用公式
单行计算版本
在展示页对应B3类型行的结果单元格输入以下公式,即可返回当前选中站点下、该类型的最新日期:
=IFERROR(LARGE(FILTER(DATA!A:A,DATA!F:F=C1,DATA!E:E=B3),1),"")
公式逻辑:
- 用
FILTER筛选出DATA表中同时满足「F列站点等于C1选中站点」「E列类型等于当前行B3类型」的所有日期 - 用
LARGE(...,1)取筛选后日期集合的最大值,即最新日期 - 用
IFERROR做容错,无匹配数据时返回空值,避免显示#N/A等报错
批量计算版本
如果需要一次性计算所有类型对应的最新日期,不用逐行粘贴公式,可在第一个类型对应的结果单元格输入以下公式,结果会自动向下溢出填充:
=MAP(B3:B,LAMBDA(type,IF(type="","",IFERROR(LARGE(FILTER(DATA!A:A,DATA!F:F=C1,DATA!E:E=type),1),""))))
内容的提问来源于stack exchange,提问作者devMethodes
相关产品推荐
相关产品推荐

