[英]Google Scripts + Sheets + Calendar “You do not have permission to call getCalendarsByName”
[英]Google Scripts Error: “You do not have permission to call sort”
我正在尝试在 Google 表格中运行自定义函数。 我没有收到编译错误,但是当我尝试调用该函数时,我收到一个 #ERROR 和一条消息,
您没有权限调用排序
有没有办法解决这个问题? 如果range.sort
不可用,如何在自定义函数中对范围进行排序?
这是我的代码:
function installmentPrice(priceRange, measuringPeriod, lowestDays, discount)
{
measuringPeriod = measuringPeriod || 5;
lowestDays = lowestDays || 1;
discount = discount || 1;
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var tempRange = sheet.getRange("C3:C9");
var newRange = tempRange.offset(0,0,measuringPeriod);
newRange.sort(newRange.getColumn());
Logger.log(newRange.getValues());
var lowestSum = 0;
var installmentPx = 0;
for (i=0; i<= lowestDays; i++) {
lowestSum = lowestSum + newRange[i];
}
lowestSum = lowestSum/lowestDays;
installmentPx = discount * lowestSum;
return installmentPx;
}
如文档中所述:
自定义函数不能影响除了返回值的单元格之外的单元格。 换句话说,自定义函数不能编辑任意单元格,只能编辑调用它的单元格及其相邻单元格。 要编辑任意单元格,请使用自定义菜单来运行函数。
您的函数尝试修改与原始单元格不同的范围,这解释了您在newRange
对象上newRange
的错误
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.