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

Excel转Google Sheets公式含双引号时setValue写入失败解决方案

解决方案

你遇到的问题是JavaScript字符串语法限制:当你用双引号"包裹整段公式字符串时,公式内部的双引号会被识别为字符串的结束标记,直接触发语法错误,导致公式写入失败。

方案1:转义内部双引号

在公式内部的每个双引号前加反斜杠\进行转义即可,修改后的代码如下:

SpreadsheetApp.openById(newID).getSheetByName("Linie 16").getRange(28,3,1,1).setValue("=SUMMENPRODUKT((Query!$K$2:$K$20876=$E$28)*(RECHTS(Query!$A$2:$A$20876;3)<>\"001\")*(Query!$G$2:$G$20876))");

方案2:使用模板字符串包裹公式(无需手动转义)

如果不想手动加转义符,也可以用ES6的反引号模板字符串来包裹整个公式,此时内部的双引号不需要额外处理:

SpreadsheetApp.openById(newID).getSheetByName("Linie 16").getRange(28,3,1,1).setValue(`=SUMMENPRODUKT((Query!$K$2:$K$20876=$E$28)*(RECHTS(Query!$A$2:$A$20876;3)<>"001")*(Query!$G$2:$G$20876))`);

注意:你当前用的SUMMENPRODUKT、RECHTS是德语地区Google Sheets的函数名,如果你后续切换到英语地区的表格环境,需要对应替换为SUMPRODUCT、RIGHT。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 17:27:01