【发布时间】:2020-01-13 18:49:55
【问题描述】:
我有一个函数可以将自动扩展公式添加到某些标题行单元格
在下一行代码中,我得到Display Values,然后将它们发布回工作表
我担心我会得到自动扩展公式before他们已经完成expanding范围内的值
这个r.getDisplayValues(); 会得到值before 自动扩展完成吗?从而得到应该有数据的空白数据的值
我已经测试了各种场景,但这不是确定的
另外,我在搜索中找不到任何东西
谢谢
function setFormulasAE_n() {
var ss =SpreadsheetApp.getActive();
var sheet =ss.getSheetByName('Elements');
var LC = sheet.getLastColumn();
var LR = sheet.getLastRow();
//Auto-expanding Formulas to be added
//Two dim array with 1 row
var formulas = [[
"=ArrayFormula({\"ig_TagsHistorical\";iferror(vlookup(INDIRECT(\"Elements!A2:A\"&counta(Elements!$AJ$1:$AJ)), \'HelperElements_(ignore)\'!$A$2:$G, {5}, 0))})",
"=ArrayFormula({\"Additional Networks\";iferror(vlookup(INDIRECT(\"Elements!A2:A\"&counta(Elements!$AJ$1:$AJ)), \'Helper_(ignore)\'!$A$2:$D, {4}, 0))})",
]];
//Add auto-expanding formulas to Cell(s)
var cell = sheet.getRange(1,LC+1,1,formulas[0].length);
cell.setFormulas(formulas);
//Get range and post back Display Values
var r = sheet.getRange(1,LC+1,LR,formulas[0].length);
var v = r.getDisplayValues();
r.setValues(v)
}
【问题讨论】:
-
有什么问题?
-
这个
r.getDisplayValues();会得到值before自动扩展完成吗?从而获得应该有数据的空白数据的值 -
也许你应该在 setFormulas() 之后尝试 SpreadsheetApp.flush()。
-
谢谢,我会补充的
标签: javascript google-apps-script google-sheets google-sheets-formula