Google apps script google电子表格中的setValues权限问题
我正在制作将数据插入工作表的脚本。但它不起作用。返回错误:setValues没有权限。为什么?Google apps script google电子表格中的setValues权限问题,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我正在制作将数据插入工作表的脚本。但它不起作用。返回错误:setValues没有权限。为什么? function addData(type){ /* Somehow I get 2d array: result */ var arr = []; var c = []; var i, j; for (i = 0;i < result.length-1; i++) { c=[]; for (j = 0; j < result[0].length; j+
function addData(type){
/*
Somehow I get 2d array: result
*/
var arr = [];
var c = [];
var i, j;
for (i = 0;i < result.length-1; i++) {
c=[];
for (j = 0; j < result[0].length; j++){
c.push(result[i][j]);
}
arr.push(c);
}
var sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange(1, 1, i+1, j+1).setValues(arr);
}
函数addData(类型){
/*
不知怎的,我得到了2d数组:结果
*/
var-arr=[];
var c=[];
varⅠ,j;
对于(i=0;i
好的,我解决了问题。您的线路:
sheet.getRange(1, 1, i+1, j+1).setValues(arr);
正在为结果数组中的每个值在positin行1和列1处调用数组以设置值。用类似这样的东西替换它,您应该准备好了:
function addData(){
var sheet = SpreadsheetApp.getActiveSheet();
var result = [[1,2,3,4,5], [6,7,8,9,10], [11,12,13,14,15], [16,17,18,19,20]];
for(var i=0; i<result.length; i++)
{
for(var j=0; j<result[0].length; j++)
{
sheet.getRange(i+1, j+1).setValue(result[i][j]);
}
}
}
函数addData(){
var sheet=SpreadsheetApp.getActiveSheet();
var结果=[[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15],[16,17,18,19,20];
对于(var i=0;iIs您试图设置空值的范围?或者可能受保护的工作表?数组不为空,我通过调试器进行了检查。工作表不受保护。它是新的,甚至可以通过url:)URL可用并不一定意味着工作表不受保护。您只能对工作表拥有查看权限。因此,您可能无法编辑它。我打赌您的问题是您将此调用为自定义单元格函数。不要。请阅读自定义函数官方帮助。请使用菜单项或Web应用程序,而不是可能重复的“非常感谢”,但我仍然收到相同的错误:没有对setValue的权限。那么你可能没有对工作表的编辑权限。他的问题不是输出的正确性。似乎是你(回答者)发现了操作码的另一个问题。我的想法是,因为他试图将整个数组的值复制到同一个单元格中,这可能会给他带来错误。