2017-03-16 14 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

相關問題