2017-03-16 80 views
0

我有一个2列的谷歌表,第一列(A)有域名,我想填充它们是否在Google Apps中验证或不在列B中。通过应用程序脚本在Google表格列中写入值

我写了下面的脚本 - : 当我检查日志时,我看到循环工作正常,因为我在列A中获得了所有4域的True/False值,面临着将结果写入列的问题乙以下面的脚本,它似乎缺少getrange周围的东西,但不知道。 任何帮助表示赞赏。

var ss = SpreadsheetApp.getActiveSpreadsheet() 
var data = ss.getSheets()[0].getDataRange().getValues(); 
var customer = "my_customer"; 
function domainList() { 
for(i=0; i<data.length; i++){ 

    var getDomain = AdminDirectory.Domains.get(customer, data[i]) 
    var result = JSON.parse(getDomain.verified) 
    sheet.getRange('B1').setValue(result) 
Logger.log(result) 
    } } 
+1

我不认为表单被定义。 – Cooper

回答

0

我认为你需要定义工作表。

var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var sheet = SpreadsheetApp.getActiveSheet(); 
var data = ss.getSheets()[0].getDataRange().getValues(); 
var customer = "my_customer"; 
function domainList() { 
for(i=0; i<data.length; i++){ 

    var getDomain = AdminDirectory.Domains.get(customer, data[i]) 
    var result = JSON.parse(getDomain.verified) 
    sheet.getRange('B1').setValue(result) 
Logger.log(result) 
    } } 

我想如果你会重新编码你的功能,它会工作正常。为了让代码正确,我禁用了几行代码。

function domainList() 
{ 
var sheet = SpreadsheetApp.getActiveSheet(); 
var data =sheet.getDataRange().getValues(); 
var customer = "my_customer"; 
    for(i=0; i<data.length; i++) 
    { 
    data[i]=[]; 
    //var getDomain = AdminDirectory.Domains.get(customer, data[i][0]); 
    //var result = JSON.parse(getDomain.verified) 
    sheet.getRange(i+1,2).setValue('yes') 

    } 
} 
+0

谢谢,它仍然只放在B1的第一个值,并留下B2,B3,B4空白。 –

+0

您只能设置B1值sheet.getRange('B1')。setValue(result)。也许你想让它成为B + I + 1?或类似的东西。 – Cooper

+1

有几种其他方式可以使用getRange阅读关于它们的内容(https://developers.google.com/apps-script/reference/spreadsheet/sheet)。 – Cooper

相关问题