我一直在谷歌脚本中编写这个简单的代码,以便在按钮上执行。
我希望用户能够并排选择两个单元格,然后单击按钮。第一个选定的单元格将使用日期进行更新,右侧的单元格将增加 1。到目前为止我已经做到了:
function increment() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var activeSheet = ss.getActiveSheet();
var activeValues = activeSheet.getActiveRange().getValues();
var newValues = [[Utilities.formatDate(new Date(), "UTC-8",
"yyyy/MM/dd"),activeValues[1]+1]];
activeValues.setValues(newValues);
}
我认为我需要在 getActiveRange 上使用 setValues,但我不确定如何将事件范围更改为可以通过 setValues 设置的数组。
我认为我没有使用 activevalues[1] 调用正确的元素(第一个元素,第二列)。不知道如何调用它。
现在我收到错误:无法在对象 1 中找到函数 setValues。
最佳答案
发生错误的原因是 activeValues 是数组的数组/二维数组,但 setValues 是 Range 类的方法。
假设 activeValues 与 newValues 具有相同的形状,则可以对代码进行最小的更改,而不是
activeValues.setValues(newValues);
使用
activeSheet.getActiveRange().setValues(newValues);
关于javascript - 如何将事件范围更改为可以通过setValues设置的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51275267/