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

如何在Google Sheets中用公式找到三种食物组合以满足指定营养值?

在Google Sheets中计算满足目标营养要求的食物分量

1. 先整理数据结构

把现有食物的营养数据按如下格式输入到表格中(以A1:D4为例):

食物名称每100g蛋白质每100g碳水每100g脂肪
chicken3201
avocado2915
rice2260

目标营养值单独存放(比如F2:F4):

  • F2=40(目标蛋白质)
  • F3=40(目标碳水)
  • F4=10(目标脂肪)

2. 用矩阵公式直接求解

这是基于线性方程组的解法,三种食物对应三个变量,刚好可以通过矩阵求逆计算出精确分量。

假设要在H2:H4输出三种食物的分量(单位:g),输入以下数组公式:

=MMULT(MINVERSE(B2:D4/100), F2:F4)

注:旧版Google Sheets需要按Ctrl+Shift+Enter触发数组计算,新版直接回车即可。

计算结果:

  • chicken分量≈113.05g
  • avocado分量≈59.13g
  • rice分量≈133.38g

验证:三种食物的营养素总和完全匹配目标值(误差为计算精度导致的微小偏差)。


3. 用规划求解(Solver)工具直观计算

如果对矩阵公式不熟悉,可使用Google Sheets的Solver插件:

  1. 点击菜单栏「扩展程序」→「添加扩展程序」,搜索安装Solver。
  2. 设置计算单元格:
    • 用G2:G4存放三种食物的分量(初始值可填任意正数,比如100)。
    • 计算实际营养值:
      • H2(实际蛋白质):=(B2*G2 + B3*G3 + B4*G4)/100
      • H3(实际碳水):=(C2*G2 + C3*G3 + C4*G4)/100
      • H4(实际脂肪):=(D2*G2 + D3*G3 + D4*G4)/100
  3. 打开Solver配置:
    • 目标:选择H2,设置为「值为」40
    • 添加约束:H3=40、H4=10
    • 可变单元格:选择G2:G4
    • 点击「求解」,即可自动得到符合要求的分量值。

注意事项

  • 确保所有参与计算的单元格为数值格式,避免文本干扰计算。
  • 如果目标营养无法通过现有食物组合实现,公式会返回错误,Solver也会提示无解。

内容的提问来源于stack exchange,提问作者Meggy Martin-Johnson

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 07:40:11