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

Excel中如何提取指定类别下最低价商品的名称、店铺及单价?

问题

此前已通过条件格式公式 =AND(C2=MIN(FILTER($C$2:$E$7,$A$2:$A$7=$A2)), C2 <> "") 实现了原始数据中同类别全店铺最低价的高亮。现需在汇总表中按类别提取三类信息:

  • 最低价商品名称
  • 对应店铺名称
  • 商品单价

其中单价公式已实现,但商品名称和店铺名称的提取尝试CELL、ROW、COLUMN及INDEX+MATCH组合均未成功,求可行方案。

原始数据表格

类别商品店铺1店铺2店铺3
Cat 1Product 1$30.00$35.00$27.00
Cat 1Product 2$29.00$24.00$25.00
Cat 1Product 3$32.00$33.00$35.00
Cat 2Product A$4.00$4.30$4.50
Cat 2Product B$5.00$5.50$4.50
Cat 2Product C$3.50$4.00$3.75

汇总表(待填充)

类别商品店铺单价公式示例
Cat 1=MIN(FILTER($C$2:$E$7, $A$2:$A$7 = A10))
Cat 2=MIN(FILTER($C$2:$E$7, $A$2:$A$7 = A11))

解决方案

1. 提取最低价商品名称

假设汇总表中Cat 1的商品单元格为B10,使用以下公式:

=INDEX($B$2:$B$7, MATCH(MIN(FILTER($C$2:$E$7, $A$2:$A$7=A10)), FILTER($C$2:$E$7, $A$2:$A$7=A10), 0))
  • 逻辑:先用FILTER筛选出当前类别的所有价格,找到最小值后,用MATCH定位该最小值在筛选结果中的位置,最后用INDEX提取对应行的商品名称。

如果同一类别存在多个相同最低价,可使用TEXTJOIN合并所有对应商品:

=TEXTJOIN(", ", TRUE, INDEX($B$2:$B$7, FILTER(ROW($B$2:$B$7)-1, FILTER($C$2:$E$7, $A$2:$A$7=A10)=MIN(FILTER($C$2:$E$7, $A$2:$A$7=A10)))))

2. 提取对应店铺名称

假设汇总表中Cat 1的店铺单元格为C10,使用以下公式:

=INDEX($C$1:$E$1, MATCH(MIN(FILTER($C$2:$E$7, $A$2:$A$7=A10)), FILTER($C$2:$E$7, $A$2:$A$7=A10), 0))
  • 逻辑:与商品名称提取逻辑一致,只是将INDEX的引用范围改为表头的店铺名称区域。

多最低价时合并店铺:

=TEXTJOIN(", ", TRUE, INDEX($C$1:$E$1, FILTER(COLUMN($C$1:$E$1)-2, FILTER($C$2:$E$7, $A$2:$A$7=A10)=MIN(FILTER($C$2:$E$7, $A$2:$A$7=A10)))))

3. 单价公式优化(可选)

原单价公式可统一为:

=MIN(FILTER($C$2:$E$7, $A$2:$A$7=A10))

下拉公式即可自动适配不同类别,无需手动修改引用行号。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 06:05:56