使用链接到应用程序脚本的按钮对电子表格上的范围进行排序

Sort Range on Spreadsheet with button linked to app script

我有以下代码,我正在尝试 link 一个按钮,以按列 H(日期)对页面上的范围进行排序。我得到了按钮 linked,但代码不起作用

function sortRange() {
  var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('FBY Team');
 var sheet = ss.getSheets()[0];
 var range = sheet.getRange("A6:M100");

 range.sort({column: 2, ascending: true});

 }

我已将 link 添加到我的测试电子表格中。 https://docs.google.com/spreadsheets/d/1iWQ40boplJcJmdFg9HNIyOAOrHOjlCRu362LWRdV5y0/edit?usp=sharing

问题

  1. 'FBY Team' 不是您的 sheet 之一。
  2. 你通常使用 ss 变量来传播 sheet 在这里你试图抓住一个 sheet.
  3. 当第 2 行更正后,您可以删除第 3 行。
  4. header 从第 7 行开始,而不是第 6 行,因此范围不正确

解决方案

我建议您将代码更改为:

function sortRange() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('Your Sheet 1');
  var range = sheet.getRange("A7:M100");
  range.sort({column: 2, ascending: true});
 }

现在应该可以了。