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

Excel for Mac中SUMPRODUCT公式返回#VALUE!错误的调试请求

Excel for Mac中SUMPRODUCT公式返回#VALUE!错误的调试请求

大家好,我在Excel for Mac里写的SUMPRODUCT公式一直返回#VALUE!错误,实在找不到问题所在,想请各位帮忙看看。

需求说明

这个公式的目的是在「food tracker」工作表的Daily Tally区域,计算对应宏量营养素(比如Kcal)的总摄入量——具体来说,就是把「nutrition by portion」工作表中每种食物的单位营养值,乘以「food tracker」里对应的食用量,最后求和。

出错的公式

=SUMPRODUCT(IFNA(@OFFSET(AllFoodItems,MATCH(@DailyFoodItems,AllFoodItems,0)-1,MATCH($A12,Nutrients,0),1,1),0), OFFSET(DailyFoodItems,0,B$3))

相关工作表与命名范围

「nutrition by portion」工作表(精简版)

这张表存储了每种食物每克/每毫升的营养数据:

Foodstuffweight (grams or ml)KcalAnimal Protein (g)Plant Protein (g)Sodium (mg)Potassium (mg)Fat (g)
almond butter1.005.940.000.220.007.470.53
almond cake1.003.550.000.082.743.480.30
almond flour1.006.330.000.230.006.670.50
almondmilk1.000.130.000.000.670.150.01
almonds1.005.890.000.210.017.320.50

「food tracker」工作表

这张表记录当日食用的食物及分量,Daily Tally区域用公式引用营养表计算总和:

项目内容
day of weekfriday
meal number1
almond butter30
almond cake40
almond flour10
almondmilk5
almonds2
Daily Tally
Kcal=SUMPRODUCT(IFNA(OFFSET(AllFoodItems,MATCH(@DailyFoodItems,AllFoodItems,0)-1,MATCH(@A:A,Nutrients,0),1,1),0), OFFSET(DailyFoodItems,0,B$3))
Animal Protein (g)=SUMPRODUCT(IFNA(@OFFSET(AllFoodItems,MATCH(@DailyFoodItems,AllFoodItems,0)-1,MATCH($A12,Nutrients,0),1,1),0), OFFSET(DailyFoodItems,0,B$3))
Plant Protein (g)=SUMPRODUCT(IFNA(@OFFSET(AllFoodItems,MATCH(@DailyFoodItems,AllFoodItems,0)-1,MATCH($A13,Nutrients,0),1,1),0), OFFSET(DailyFoodItems,0,B$3))
其他营养素项公式格式与上述一致,仅MATCH中的行号(如$A14、$A15)不同

已定义的命名范围

命名范围范围值引用位置
DailyFooditems{"almond butter"; "almond cake"; "almond flour";"almondmilk";"almonds"}='food tracker'!$A$4:$A$8
AllFooditems{"almond butter"; "almond cake"; "almond flour";"almondmilk";"almonds"}='nutrition by portion'!$A$2:$A$10
Nutrients{"weight (grams or ml)", "Kcal","Animal Protein (g)","Plant Protein (g)","Sodium (mg)","Potassium (mg)","Fat (g)"}='nutrition by portion'!$B$1:$AA$1

我的排查思路(以及请求帮助的点)

我已经检查了命名范围的引用是否正确,食物名称和营养素名称也都是完全匹配的,但公式还是返回#VALUE!。怀疑是@运算符(隐式交集)在Excel for Mac中的行为和数组运算不兼容,或者OFFSET函数的数组返回格式有问题?

有没有大佬能帮忙分析下错误原因,或者给出可行的修改方案?


备注:内容来源于stack exchange,提问作者SottoVoce

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.20 11:38:04