求助:Excel中筛选Store表截至当前可用唯一商品的Filter公式
筛选截至今日可用的唯一商品公式方案
核心逻辑
不能仅通过排除REMOVED行解决问题,因为同一商品可能存在多条历史操作记录,必须基于每个商品的最新生效操作判断状态:
- 若商品最新操作是
NEW/RE-ADDED/PRICE CHANGED,且生效日期≤今日 → 可用 - 若商品最新操作是
REMOVED→ 不可用
Google Sheets 实现公式
=UNIQUE(FILTER(Store!ITEMS, Store!EFFECTIVE = MAXIFS(Store!EFFECTIVE, Store!ITEMS, Store!ITEMS), Store!Action <> "REMOVED", Store!EFFECTIVE <= TODAY() ))
公式解析
MAXIFS(Store!EFFECTIVE, Store!ITEMS, Store!ITEMS):为每个商品匹配其最新生效日期Store!EFFECTIVE = ...:仅保留每个商品的最新操作记录行Store!Action <> "REMOVED":过滤掉最新操作是移除的商品Store!EFFECTIVE <= TODAY():确保操作已生效(不晚于今日)UNIQUE:最终输出去重后的唯一可用商品列表
Excel 365/2021+ 实现公式
=UNIQUE(FILTER(Store[ITEMS], Store[EFFECTIVE] = XLOOKUP(Store[ITEMS], Store[ITEMS], Store[EFFECTIVE], , , -1), Store[Action] <> "REMOVED", Store[EFFECTIVE] <= TODAY() ))
公式解析
XLOOKUP(Store[ITEMS], Store[ITEMS], Store[EFFECTIVE], , , -1):反向查找(从下至上)每个商品的最新生效日期- 其余条件逻辑与Google Sheets一致,最终筛选出符合要求的唯一商品列表
特殊场景处理
若存在同一商品同一天有多条操作记录(如当日先移除后重新添加),需额外增加操作时间戳列,或先对表格按ITEMS和EFFECTIVE(含时间)排序,再使用上述公式确保取到当日最后一条操作记录。
内容的提问来源于stack exchange,提问作者Sun
相关产品推荐
相关产品推荐

