排序脚本中的语法错误?

时间:2017-06-27 01:16:56

标签: google-apps-script

编写脚本按照范围对A4进行排序,A4到右下角的单元格(因为可以添加行和/或列)。该脚本查找最后一列/最后一行的单元格,然后使用范围var中的单元格。问题是,当我尝试运行此脚本时,它会在参数列表后面给我" Missing)。 (第8行,文件"按游戏者标记排序")"。但是我已经关闭了所有的"("。

有什么建议吗?

由于

function sortByGamerTag() {

  var ss=SpreadsheetApp.getActiveSpreadsheet();
  var sht=ss.getSheetByName('Master Summary 2');
  var lastRow=sht.getLastRow();
  var lastCol=sht.getLastColumn();
  var lastCell=sht.getCell(lastCol,lastRow);
  var range = sht.getRange("A4":lastCell);
  range.sort(2);

}

1 个答案:

答案 0 :(得分:1)

我认为您的脚本中有两个修改点。请在下面确认。

修改要点:

    {li> range getRange(range)可以通过字符串给出。
    • 因此,请从"A4":lastCell更改为"A4:" + lastCell
  1. getCell()返回范围内的给定单元格。 (Ref.)在您的脚本中,var lastCell=sht.getCell(lastCol,lastRow);发生错误。
    • 因此,请从var lastCell=sht.getCell(lastCol,lastRow);更改为var lastCell = sht.getRange(lastRow, lastCol).getA1Notation();
  2. 修改后的脚本:

    您的脚本可以通过修改以上几点来编写。

    function sortByGamerTag() {
      var ss=SpreadsheetApp.getActiveSpreadsheet();
      var sht=ss.getSheetByName('Master Summary 2');
      var lastRow=sht.getLastRow();
      var lastCol=sht.getLastColumn();
      var lastCell = sht.getRange(lastRow, lastCol).getA1Notation();
      var range = sht.getRange("A4:" + lastCell);
      range.sort(2);
    }
    

    如果我误解了你的问题,我很抱歉。