Javascript 有没有一种方法可以在多选-谷歌表格中的单元格间迭代公式

Javascript 有没有一种方法可以在多选-谷歌表格中的单元格间迭代公式,javascript,arrays,loops,google-apps-script,google-sheets,Javascript,Arrays,Loops,Google Apps Script,Google Sheets,在google工作表中,此简单脚本用于选择单个单元格,然后单击按钮将所选单元格中的值减少1: function tally() { var cell = SpreadsheetApp.getActiveSheet().getActiveCell(); var value = cell.getValue(); cell.setValue(value-1); } 是否有一种方法可以进行多重选择,即在表格中选择多个/分散的单元格,然后在每个选定单元格中迭代函数?说明: 您可以使用并

在google工作表中,此简单脚本用于选择单个单元格,然后单击按钮将所选单元格中的值减少1:

function tally() {
 
  var cell = SpreadsheetApp.getActiveSheet().getActiveCell();
  var value = cell.getValue();
  cell.setValue(value-1);
}
是否有一种方法可以进行多重选择,即在表格中选择多个/分散的单元格,然后在每个选定单元格中迭代函数?

说明:
  • 您可以使用并假设您有一个2D 数组中,可以使用double从每个单元格中扣除一个
  • 然后将所有值返回到工作表
解决方案:
工作一次-然后仅处理最后选定的单元格。(?)@JohnDickey很遗憾,我无法复制您的问题。您需要用鼠标选择单元格(直到它们周围有蓝色边框),然后运行脚本。您能否提供有关如何执行函数的更多详细信息?我选择一个单元格,然后运行脚本,然后重复-但我希望能够对分散的单个单元格进行多次选择,然后运行脚本一次。只有在我选择相邻单元格时,脚本才能在多个单元格上工作,我很少这样做。我想我不了解其他可能有助于对多个分散的选择进行操作的可能性(getActiveRangeList?)。
function tally() {
  const rng = SpreadsheetApp.getActiveSheet().getActiveRange();
  const values = rng.getValues().map(r=>r.map(c=>c-1));
  rng.setValues(values);
}