非Office365环境下Excel物料清单动态列表公式实现
非Office365版Excel物料清单动态汇总方案
针对你需要筛选IN BUILD=1的物料、去重并汇总数量的需求,以下是纯公式实现方案(无需Power Query):
假设数据范围
设原始数据位于A2:C100:
A列:PART(物料编码)B列:QTY(数量)C列:IN BUILD(筛选标识,1为有效)
1. 生成去重的有效物料列表(示例输出到E2单元格)
使用数组公式(输入后需按Ctrl+Shift+Enter确认,非Office365版本必须操作):
=IFERROR(INDEX($A$2:$A$100, MATCH(0, COUNTIF($E$1:E1, $A$2:$A$100)+($C$2:$C$100<>1), 0)), "")
公式逻辑:
COUNTIF($E$1:E1, $A$2:$A$100):排除已在E列上方出现过的重复物料($C$2:$C$100<>1):排除IN BUILD不等于1的无效物料MATCH(0, ..., 0):找到第一个同时满足「未重复+有效」的物料位置INDEX提取对应物料编码,IFERROR处理无数据时的空值
将E2单元格公式下拉,直到出现空值,即可生成动态的去重有效物料列表。
2. 对应汇总物料数量(示例输出到F2单元格)
使用普通公式(无需三键):
=IF(E2<>"", SUMIFS($B$2:$B$100, $A$2:$A$100, E2, $C$2:$C$100, 1), "")
公式逻辑:
SUMIFS同时匹配两个条件:物料编码等于E列对应值、IN BUILD=1IF(E2<>"", ...):仅当E列有物料时才计算,否则返回空值
同样下拉F2公式,即可同步生成对应物料的汇总数量。
注意事项
- 请根据实际数据范围调整公式中的
$A$2:$A$100、$B$2:$B$100、$C$2:$C$100引用范围 - 数组公式必须按
Ctrl+Shift+Enter触发,否则会返回错误值
内容的提问来源于stack exchange,提问作者user24009848
相关产品推荐
相关产品推荐

