Google apps script Google Sheets:激活多个选择,其中范围基于数据长度

Google apps script Google Sheets:激活多个选择,其中范围基于数据长度,google-apps-script,google-sheets,Google Apps Script,Google Sheets,以下代码激活第4行G列至I列中的范围。结束行取决于基于B列中数据长度的 function seleziona() { var ss = SpreadsheetApp.getActiveSpreadsheet(); SpreadsheetApp.setActiveSheet(ss.getSheetByName('Sheet1')); var sheetActive = SpreadsheetApp.getActiveSpreadsheet(); var sheetActive =

以下代码激活第4行G列至I列中的范围。结束行取决于基于B列中数据长度的

function seleziona() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  SpreadsheetApp.setActiveSheet(ss.getSheetByName('Sheet1'));
  var sheetActive = SpreadsheetApp.getActiveSpreadsheet();
  var sheetActive = SpreadsheetApp.getActiveSheet();
  var Avals = sheetActive.getRange("B4:B").getValues();
  var Alast = Avals.filter(String).length;
  sheetActive.getRange(4, 7, Alast, 3).activate();
}

我想知道是否有一种方法可以进行多重选择(例如使用getRangeList),即选择上面的代码+以下范围:getRange(358,7,8,3)

我相信您的目标如下

  • 您想使用范围列表激活
    sheetActive.getRange(4,7,Alast,3)
    sheetActive.getRange(358,7,8,3)
    的范围
在这种情况下,作为一个简单的修改,下面的修改如何

发件人: 致: 注:
  • 如果要激活“Sheet1”的范围,还可以使用以下修改的scriot

      var ss = SpreadsheetApp.getActiveSpreadsheet();
      var sheetActive = ss.getSheetByName('Sheet1');
      var Avals = sheetActive.getRange("B4:B").getValues();
      var Alast = Avals.filter(String).length;
      var rangeList = [
        sheetActive.getRange(4, 7, Alast, 3).getA1Notation(),
        sheetActive.getRange(358, 7, 8, 3).getA1Notation(),
      ];
      sheetActive.getRangeList(rangeList).activate();
    
参考资料:

完美!非常有用。谢谢大家!@马克表示热烈欢迎。谢谢你让我知道。我很高兴你的问题解决了。如果您的问题已解决,请按“接受”按钮。与您有相同问题的其他人也可以将您的问题作为可以解决的问题。我认为你的问题和解决方案对他们会有帮助。如果你找不到按钮,尽管告诉我。出于文档目的,如果可以,请接受答案(✓) 这对你很有帮助——它还可以帮助将来遇到同样问题的其他人找到解决方案:)
var rangeList = [
  sheetActive.getRange(4, 7, Alast, 3).getA1Notation(),
  sheetActive.getRange(358, 7, 8, 3).getA1Notation(),
];
sheetActive.getRangeList(rangeList).activate();
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheetActive = ss.getSheetByName('Sheet1');
  var Avals = sheetActive.getRange("B4:B").getValues();
  var Alast = Avals.filter(String).length;
  var rangeList = [
    sheetActive.getRange(4, 7, Alast, 3).getA1Notation(),
    sheetActive.getRange(358, 7, 8, 3).getA1Notation(),
  ];
  sheetActive.getRangeList(rangeList).activate();