2017-03-16 8 views
0

2列のGoogleシートがあり、1列目(A)にドメイン名があり、Google Appsで確認されたかどうか、それぞれB列には入力されません。Appsスクリプトを使用してGoogleシートの列に値を書き込む

私はログをチェックすると、列Aの4つのドメインすべてに対してTrue/Falseの値を取得してループが正常に動作していることがわかります。 Bの次のスクリプトでは、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

関連する問題