一段时间以来,我一直试图找到解决该问题的方法。
这是代码
function CHECK(INPUT) {
var url = "GOOGLE SHEET URL" + INPUT;
var response = UrlFetchApp.fetch(url);
var json = response.getContentText("UTF-8");
var data = JSON.parse(json);
var price = data;
SpreadsheetApp.flush();
return price;
}
此函数从Google工作表中提取值,结果将其显示在另一个Google工作表中。问题在于,当源更改时,目标值不会更改。
我所需要的是一些将强制重新计算Google表格中的值或刷新功能或其他功能,但将使值保持最新状态的
。 PS =CHECK(INPUT, **DATE**)
不是解决方案
答案 0 :(得分:1)
如果我的理解是正确的,那么该示例脚本如何?我认为您的情况有几个答案。因此,请考虑这只是几个答案之一。
在此示例脚本中,为了重新计算功能,该功能被相同的功能替换。
在此示例脚本中,当=CHECK(INPUT)
是“ Sheet1”的单元格“ A1”时,该函数将被相同的函数替换。
var sheetName = "Sheet1"; // Please modify this for your situation.
var cell "A1"; // Please modify this for your situation.
var ss = SpreadsheetApp.getActiveSpreadsheet();
var range = ss.getSheetByName(sheetName).getRange(cell);
var formula = range.getFormula();
range.clearContent();
SpreadsheetApp.flush();
range.setFormula(formula);
在此示例脚本中,“ Sheet1”中的所有功能都被相同的功能取代。
var sheetName = "Sheet1"; // Please modify this for your situation.
var ss = SpreadsheetApp.getActiveSpreadsheet();
var range = ss.getSheetByName(sheetName).getDataRange();
var values = range.getValues();
var formulas = range.getFormulas();
var replacedValues = values.map(function(e, i) {return e.map(function(f, j) {return formulas[i][j] || f})});
range.clearContent();
SpreadsheetApp.flush();
range.setValues(replacedValues);
如果我误解了您的问题,而这不是您想要的方向,我深表歉意。