Javascript 在googlesheets中使用脚本设置公式

Javascript 在googlesheets中使用脚本设置公式,javascript,google-apps-script,google-sheets,Javascript,Google Apps Script,Google Sheets,我对javascript有一点了解,我只是想知道如何制作一个在这些场景中工作的脚本 我只想用D2:F2设置第二行,或者只要第一行有一个值作为公式中的引用,就像在cells:D2={franco!F2:F};E2={justin!F2:F};F2={aeron!F2:F}等等。。。 目前我正在使用以下代码: function setFormula() { var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1'

我对javascript有一点了解,我只是想知道如何制作一个在这些场景中工作的脚本

我只想用D2:F2设置第二行,或者只要第一行有一个值作为公式中的引用,就像在cells:D2={franco!F2:F};E2={justin!F2:F};F2={aeron!F2:F}等等。。。 目前我正在使用以下代码:

function setFormula() {
  var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
  var rangeList = ss.getRange('d1:f1').getValue();
  var range = ss.getRange('d2:f2');
  range.setValue('={'+rangeList+'!F2:F}');
}
希望有人能帮我写这段代码。提前感谢您

  • 您需要将
    {franco!F2:F}
    {justin!F2:F}
    {aeron!F2:F}
    的公式分别放在单元格“D2”、“E2”和“F2”中
  • 在本例中,您希望从单元格“D1:F1”中检索
    franco、justin、aeron的值
  • 您希望使用谷歌应用程序脚本实现这一点
我可以像上面那样理解。对于这个问题,这个答案如何?请把这看作是几个可能的答案之一

示例脚本:
  • 首先,检索franco、justin、aeron的值。使用这些值,每个公式都在循环中使用
    map
  • setFormulas
    使用二维数组。请小心这个
参考资料:

我不得不为我糟糕的英语技能道歉。我无法理解您当前的问题和目标。我可以问一下它们的详细信息吗?嗨,塔奈克,如果我运行setFormula函数,它会自动设置公式。以下单元格D2={franco!F2:F};E2={justin!F2:F};F2={aeron!F2:F}使用脚本。感谢您的回复。您希望使用Google Apps脚本分别将
{franco!F2:F}
{justin!F2:F}
{aeron!F2:F}
的公式放入单元格“D2”、“E2”和“F2”。我的理解正确吗?是的,那是正确的,谢谢我感谢你的时间,塔奈克,谢谢,我认为没关系,但是有没有一种方法,它会自动生成一个不使用这个变量公式的公式=[“{franco!F2:F}”,“={justin!F2:F}”,“={aeron!F2:F}”];但是只使用这个range.setValue('={'+rangeList+'!F2:F}');这将为每个D2、E2和F2计算公式,而不是仅为一个单元格,其余单元格将分别计算公式。基于D1、E1、F1的范围列表,值为franco justin和aeronrespectively@Franc谢谢你的回复。给您带来不便,我深表歉意。我想现在我可以正确理解你的目标了。“你能等一下吗?”弗朗克谢谢你的回答。我更新了我的答案。你能确认一下吗?是的,这是我需要的。谢谢你的帮助。你是最好的是的,塔奈克谢谢你的时间。上帝保佑
function setFormula() {
  var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
  var rangeList = ss.getRange('d1:f1').getValues()[0];
  var range = ss.getRange('d2:f2');
  range.setFormulas([rangeList.map(function(e) {return '={'+e+'!F2:F}'})]);
}