2015-10-06 105 views
0

我尝试从Google电子表格中将值传递给JSON。但是我得到一个无效的json字符串错误。你能帮我解决我做错的地方吗?从Google Apps脚本中的电子表格传递JSON值

请在下面找到

代码的代码片段:

for(var i=0;i>=10;i++) 
{ 
var userEmail = sheet.getRange(3, 2, sheet.getLastRow()).getValues(); 
var owner = { 
email: userEmail[i], 
role: 'OWNER' 
}; 
owner = AdminDirectory.Members.insert(owner, groupEmail); 
Logger.log('User %s added as a owner of group %s.', userEmail, groupEmail); 
Browser.msgBox("Owner Successfully Added!"); 
} 

回答

0

var userEmail必须在for()循环之外,并且还必须选择对象userEmail [i]的第一个值。 在你的代码中,我还假设sheet var是在这段代码之前的某处定义的。

var userEmail = sheet.getRange(3, 2, sheet.getLastRow()).getValues(); 
for(var i in userEmail) { 
var owner = { 
email: userEmail[i][0], 
role: 'OWNER' 
}; 
owner = AdminDirectory.Members.insert(owner, groupEmail); 
Logger.log('User %s added as a owner of group %s.', userEmail, groupEmail); 
Browser.msgBox("Owner Successfully Added!"); 
} 
0

试试这个

var userEmail = sheet.getRange(3, 2, sheet.getLastRow() - 2, 1).getValues(); 
for(var i=0;i < userEmail.length; i++) 
{ 
    var owner = { 
    email: userEmail[i][0], 
    role: 'OWNER' 
    }; 
    owner = AdminDirectory.Members.insert(owner, groupEmail); 
    Logger.log('User %s added as a owner of group %s.', userEmail, groupEmail); 
    Browser.msgBox("Owner Successfully Added!"); 
} 

的第三个参数getRange是读的行数,并因为你在排发车3 - 省略前两行 - 有2行少读。 另外getValues返回一个二维数组。

相关问题