2015-10-06 106 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返回一個二維數組。

相關問題