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

Excel 2019中匹配食材后计算配方成本的公式求助

饼干配方食材成本计算解决方案(Excel 2019)

前提假设

假设你的数据结构如下:

  • 单价表:列A为食材名称,列B为每克单价,列E为每毫升单价
  • 配方表:列G为食材名称,列H为食材用量(纯数值,单位对应单价表的克/毫升),列I为成本计算结果列

方法1:VLOOKUP函数(适合食材名称在单价表首列的场景)

在配方表的成本单元格(如I2)输入以下公式,下拉填充即可:

=H2 * VLOOKUP(G2, 单价表!A:E, 2, FALSE)
  • 参数说明:
    • G2:配方表当前行的食材名称
    • 单价表!A:E:单价表的数据源范围
    • 2:返回单价表第2列(每克单价)的匹配值
    • FALSE:启用精确匹配,确保食材名称完全对应

如果需要区分克/毫升单位(比如配方表列F标注单位),可结合IF函数:

=H2 * IF(F2="克", VLOOKUP(G2, 单价表!A:E, 2, FALSE), VLOOKUP(G2, 单价表!A:E, 5, FALSE))

方法2:INDEX+MATCH组合(更灵活,无首列限制)

如果单价表的食材名称不在首列,或需要更稳定的匹配,推荐用这个组合:
匹配每克单价的公式:

=H2 * INDEX(单价表!B:B, MATCH(G2, 单价表!A:A, 0))

匹配每毫升单价的公式:

=H2 * INDEX(单价表!E:E, MATCH(G2, 单价表!A:A, 0))
  • 参数说明:
    • MATCH(G2, 单价表!A:A, 0):找到食材名称在单价表列A中的行号
    • INDEX(单价表!B:B, 行号):返回该行对应的单价数值

同样,区分单位的公式:

=H2 * IF(F2="克", INDEX(单价表!B:B, MATCH(G2, 单价表!A:A, 0)), INDEX(单价表!E:E, MATCH(G2, 单价表!A:A, 0)))

补充提示

  • 确保食材名称在两张表中完全一致(避免"低筋面粉"和"面粉"这类差异,否则会返回#N/A)
  • 若要处理匹配失败的情况,可嵌套IFERROR函数:
=IFERROR(H2 * INDEX(单价表!B:B, MATCH(G2, 单价表!A:A, 0)), "未找到对应食材")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 18:32:05